Ver Fonte

RTC SDK Auto Released By renrang.yl,Version:1.17.9

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao há 8 anos atrás
pai
commit
32f06474af
91 ficheiros alterados com 12236 adições e 2 exclusões
  1. 4 0
      CHANGELOG
  2. 2 1
      CMakeLists.txt
  3. 1 1
      VERSION
  4. 166 0
      rtc/CMakeLists.txt
  5. 214 0
      rtc/include/alibabacloud/rtc/RtcClient.h
  6. 32 0
      rtc/include/alibabacloud/rtc/RtcExport.h
  7. 111 0
      rtc/include/alibabacloud/rtc/model/CreateChannelRequest.h
  8. 55 0
      rtc/include/alibabacloud/rtc/model/CreateChannelResult.h
  9. 123 0
      rtc/include/alibabacloud/rtc/model/CreateConferenceRequest.h
  10. 59 0
      rtc/include/alibabacloud/rtc/model/CreateConferenceResult.h
  11. 111 0
      rtc/include/alibabacloud/rtc/model/DeleteChannelRequest.h
  12. 49 0
      rtc/include/alibabacloud/rtc/model/DeleteChannelResult.h
  13. 111 0
      rtc/include/alibabacloud/rtc/model/DeleteConferenceRequest.h
  14. 51 0
      rtc/include/alibabacloud/rtc/model/DeleteConferenceResult.h
  15. 120 0
      rtc/include/alibabacloud/rtc/model/DescribeAppsRequest.h
  16. 65 0
      rtc/include/alibabacloud/rtc/model/DescribeAppsResult.h
  17. 111 0
      rtc/include/alibabacloud/rtc/model/DescribeConferenceAuthInfoRequest.h
  18. 59 0
      rtc/include/alibabacloud/rtc/model/DescribeConferenceAuthInfoResult.h
  19. 114 0
      rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailRequest.h
  20. 58 0
      rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailResult.h
  21. 111 0
      rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordListRequest.h
  22. 61 0
      rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordListResult.h
  23. 120 0
      rtc/include/alibabacloud/rtc/model/DescribeRecordDetailRequest.h
  24. 69 0
      rtc/include/alibabacloud/rtc/model/DescribeRecordDetailResult.h
  25. 132 0
      rtc/include/alibabacloud/rtc/model/DescribeRecordListRequest.h
  26. 67 0
      rtc/include/alibabacloud/rtc/model/DescribeRecordListResult.h
  27. 126 0
      rtc/include/alibabacloud/rtc/model/DescribeStatisRequest.h
  28. 78 0
      rtc/include/alibabacloud/rtc/model/DescribeStatisResult.h
  29. 111 0
      rtc/include/alibabacloud/rtc/model/ModifyAppRequest.h
  30. 49 0
      rtc/include/alibabacloud/rtc/model/ModifyAppResult.h
  31. 123 0
      rtc/include/alibabacloud/rtc/model/ModifyConferenceRequest.h
  32. 51 0
      rtc/include/alibabacloud/rtc/model/ModifyConferenceResult.h
  33. 114 0
      rtc/include/alibabacloud/rtc/model/MuteAudioAllRequest.h
  34. 59 0
      rtc/include/alibabacloud/rtc/model/MuteAudioAllResult.h
  35. 114 0
      rtc/include/alibabacloud/rtc/model/MuteAudioRequest.h
  36. 59 0
      rtc/include/alibabacloud/rtc/model/MuteAudioResult.h
  37. 114 0
      rtc/include/alibabacloud/rtc/model/RemoveParticipantsRequest.h
  38. 59 0
      rtc/include/alibabacloud/rtc/model/RemoveParticipantsResult.h
  39. 108 0
      rtc/include/alibabacloud/rtc/model/StartAppRequest.h
  40. 49 0
      rtc/include/alibabacloud/rtc/model/StartAppResult.h
  41. 108 0
      rtc/include/alibabacloud/rtc/model/StopAppRequest.h
  42. 49 0
      rtc/include/alibabacloud/rtc/model/StopAppResult.h
  43. 114 0
      rtc/include/alibabacloud/rtc/model/UnmuteAudioAllRequest.h
  44. 59 0
      rtc/include/alibabacloud/rtc/model/UnmuteAudioAllResult.h
  45. 114 0
      rtc/include/alibabacloud/rtc/model/UnmuteAudioRequest.h
  46. 59 0
      rtc/include/alibabacloud/rtc/model/UnmuteAudioResult.h
  47. 114 0
      rtc/include/alibabacloud/rtc/model/UpdateChannelRequest.h
  48. 53 0
      rtc/include/alibabacloud/rtc/model/UpdateChannelResult.h
  49. 809 0
      rtc/src/RtcClient.cc
  50. 269 0
      rtc/src/model/CreateChannelRequest.cc
  51. 66 0
      rtc/src/model/CreateChannelResult.cc
  52. 313 0
      rtc/src/model/CreateConferenceRequest.cc
  53. 64 0
      rtc/src/model/CreateConferenceResult.cc
  54. 269 0
      rtc/src/model/DeleteChannelRequest.cc
  55. 45 0
      rtc/src/model/DeleteChannelResult.cc
  56. 269 0
      rtc/src/model/DeleteConferenceRequest.cc
  57. 52 0
      rtc/src/model/DeleteConferenceResult.cc
  58. 302 0
      rtc/src/model/DescribeAppsRequest.cc
  59. 85 0
      rtc/src/model/DescribeAppsResult.cc
  60. 269 0
      rtc/src/model/DescribeConferenceAuthInfoRequest.cc
  61. 64 0
      rtc/src/model/DescribeConferenceAuthInfoResult.cc
  62. 280 0
      rtc/src/model/DescribeRealTimeRecordDetailRequest.cc
  63. 64 0
      rtc/src/model/DescribeRealTimeRecordDetailResult.cc
  64. 269 0
      rtc/src/model/DescribeRealTimeRecordListRequest.cc
  65. 71 0
      rtc/src/model/DescribeRealTimeRecordListResult.cc
  66. 302 0
      rtc/src/model/DescribeRecordDetailRequest.cc
  67. 82 0
      rtc/src/model/DescribeRecordDetailResult.cc
  68. 346 0
      rtc/src/model/DescribeRecordListRequest.cc
  69. 92 0
      rtc/src/model/DescribeRecordListResult.cc
  70. 324 0
      rtc/src/model/DescribeStatisRequest.cc
  71. 98 0
      rtc/src/model/DescribeStatisResult.cc
  72. 269 0
      rtc/src/model/ModifyAppRequest.cc
  73. 45 0
      rtc/src/model/ModifyAppResult.cc
  74. 313 0
      rtc/src/model/ModifyConferenceRequest.cc
  75. 52 0
      rtc/src/model/ModifyConferenceResult.cc
  76. 280 0
      rtc/src/model/MuteAudioAllRequest.cc
  77. 69 0
      rtc/src/model/MuteAudioAllResult.cc
  78. 281 0
      rtc/src/model/MuteAudioRequest.cc
  79. 69 0
      rtc/src/model/MuteAudioResult.cc
  80. 281 0
      rtc/src/model/RemoveParticipantsRequest.cc
  81. 69 0
      rtc/src/model/RemoveParticipantsResult.cc
  82. 258 0
      rtc/src/model/StartAppRequest.cc
  83. 45 0
      rtc/src/model/StartAppResult.cc
  84. 258 0
      rtc/src/model/StopAppRequest.cc
  85. 45 0
      rtc/src/model/StopAppResult.cc
  86. 280 0
      rtc/src/model/UnmuteAudioAllRequest.cc
  87. 69 0
      rtc/src/model/UnmuteAudioAllResult.cc
  88. 281 0
      rtc/src/model/UnmuteAudioRequest.cc
  89. 69 0
      rtc/src/model/UnmuteAudioResult.cc
  90. 280 0
      rtc/src/model/UpdateChannelRequest.cc
  91. 59 0
      rtc/src/model/UpdateChannelResult.cc

+ 4 - 0
CHANGELOG

@@ -1,3 +1,7 @@
+2018-06-22 Version: 1.17.9
+1, rtc openapi
+
+
 2018-06-21 Version: 1.17.8
 1, This is add InstanceList.
 

+ 2 - 1
CMakeLists.txt

@@ -77,4 +77,5 @@ add_subdirectory(dyvmsapi)
 add_subdirectory(drds)
 add_subdirectory(jarvis)
 add_subdirectory(scdn)
-add_subdirectory(live)
+add_subdirectory(live)
+add_subdirectory(rtc)

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.17.8
+1.17.9

+ 166 - 0
rtc/CMakeLists.txt

@@ -0,0 +1,166 @@
+#
+# 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.
+#
+
+set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
+
+set(rtc_public_header 
+	include/alibabacloud/rtc/RtcClient.h
+	include/alibabacloud/rtc/RtcExport.h )
+
+set(rtc_public_header_model 
+	include/alibabacloud/rtc/model/DescribeAppsRequest.h
+	include/alibabacloud/rtc/model/DescribeAppsResult.h
+	include/alibabacloud/rtc/model/ModifyConferenceRequest.h
+	include/alibabacloud/rtc/model/ModifyConferenceResult.h
+	include/alibabacloud/rtc/model/DescribeConferenceAuthInfoRequest.h
+	include/alibabacloud/rtc/model/DescribeConferenceAuthInfoResult.h
+	include/alibabacloud/rtc/model/DescribeRecordListRequest.h
+	include/alibabacloud/rtc/model/DescribeRecordListResult.h
+	include/alibabacloud/rtc/model/MuteAudioAllRequest.h
+	include/alibabacloud/rtc/model/MuteAudioAllResult.h
+	include/alibabacloud/rtc/model/UnmuteAudioRequest.h
+	include/alibabacloud/rtc/model/UnmuteAudioResult.h
+	include/alibabacloud/rtc/model/MuteAudioRequest.h
+	include/alibabacloud/rtc/model/MuteAudioResult.h
+	include/alibabacloud/rtc/model/StartAppRequest.h
+	include/alibabacloud/rtc/model/StartAppResult.h
+	include/alibabacloud/rtc/model/CreateConferenceRequest.h
+	include/alibabacloud/rtc/model/CreateConferenceResult.h
+	include/alibabacloud/rtc/model/DeleteChannelRequest.h
+	include/alibabacloud/rtc/model/DeleteChannelResult.h
+	include/alibabacloud/rtc/model/ModifyAppRequest.h
+	include/alibabacloud/rtc/model/ModifyAppResult.h
+	include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailRequest.h
+	include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailResult.h
+	include/alibabacloud/rtc/model/RemoveParticipantsRequest.h
+	include/alibabacloud/rtc/model/RemoveParticipantsResult.h
+	include/alibabacloud/rtc/model/DescribeStatisRequest.h
+	include/alibabacloud/rtc/model/DescribeStatisResult.h
+	include/alibabacloud/rtc/model/CreateChannelRequest.h
+	include/alibabacloud/rtc/model/CreateChannelResult.h
+	include/alibabacloud/rtc/model/DescribeRealTimeRecordListRequest.h
+	include/alibabacloud/rtc/model/DescribeRealTimeRecordListResult.h
+	include/alibabacloud/rtc/model/StopAppRequest.h
+	include/alibabacloud/rtc/model/StopAppResult.h
+	include/alibabacloud/rtc/model/DeleteConferenceRequest.h
+	include/alibabacloud/rtc/model/DeleteConferenceResult.h
+	include/alibabacloud/rtc/model/UpdateChannelRequest.h
+	include/alibabacloud/rtc/model/UpdateChannelResult.h
+	include/alibabacloud/rtc/model/UnmuteAudioAllRequest.h
+	include/alibabacloud/rtc/model/UnmuteAudioAllResult.h
+	include/alibabacloud/rtc/model/DescribeRecordDetailRequest.h
+	include/alibabacloud/rtc/model/DescribeRecordDetailResult.h )
+
+set(rtc_src 
+	src/RtcClient.cc
+	src/model/DescribeAppsRequest.cc
+	src/model/DescribeAppsResult.cc
+	src/model/ModifyConferenceRequest.cc
+	src/model/ModifyConferenceResult.cc
+	src/model/DescribeConferenceAuthInfoRequest.cc
+	src/model/DescribeConferenceAuthInfoResult.cc
+	src/model/DescribeRecordListRequest.cc
+	src/model/DescribeRecordListResult.cc
+	src/model/MuteAudioAllRequest.cc
+	src/model/MuteAudioAllResult.cc
+	src/model/UnmuteAudioRequest.cc
+	src/model/UnmuteAudioResult.cc
+	src/model/MuteAudioRequest.cc
+	src/model/MuteAudioResult.cc
+	src/model/StartAppRequest.cc
+	src/model/StartAppResult.cc
+	src/model/CreateConferenceRequest.cc
+	src/model/CreateConferenceResult.cc
+	src/model/DeleteChannelRequest.cc
+	src/model/DeleteChannelResult.cc
+	src/model/ModifyAppRequest.cc
+	src/model/ModifyAppResult.cc
+	src/model/DescribeRealTimeRecordDetailRequest.cc
+	src/model/DescribeRealTimeRecordDetailResult.cc
+	src/model/RemoveParticipantsRequest.cc
+	src/model/RemoveParticipantsResult.cc
+	src/model/DescribeStatisRequest.cc
+	src/model/DescribeStatisResult.cc
+	src/model/CreateChannelRequest.cc
+	src/model/CreateChannelResult.cc
+	src/model/DescribeRealTimeRecordListRequest.cc
+	src/model/DescribeRealTimeRecordListResult.cc
+	src/model/StopAppRequest.cc
+	src/model/StopAppResult.cc
+	src/model/DeleteConferenceRequest.cc
+	src/model/DeleteConferenceResult.cc
+	src/model/UpdateChannelRequest.cc
+	src/model/UpdateChannelResult.cc
+	src/model/UnmuteAudioAllRequest.cc
+	src/model/UnmuteAudioAllResult.cc
+	src/model/DescribeRecordDetailRequest.cc
+	src/model/DescribeRecordDetailResult.cc )
+
+add_library(rtc ${LIB_TYPE}
+	${rtc_public_header}
+	${rtc_public_header_model}
+	${rtc_src})
+
+set_target_properties(rtc
+	PROPERTIES
+	LINKER_LANGUAGE CXX
+	ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
+	OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}rtc
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(rtc
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_RTC_LIBRARY)
+endif()
+
+target_include_directories(rtc
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(rtc
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(rtc
+		jsoncpp)
+	target_include_directories(rtc
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(rtc
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(rtc
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(rtc
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(rtc
+		jsoncpp)
+endif()
+
+install(FILES ${rtc_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/rtc)
+install(FILES ${rtc_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/rtc/model)
+install(TARGETS rtc
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 214 - 0
rtc/include/alibabacloud/rtc/RtcClient.h

@@ -0,0 +1,214 @@
+/*
+ * 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_RTC_RTCCLIENT_H_
+#define ALIBABACLOUD_RTC_RTCCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "RtcExport.h"
+#include "model/DescribeAppsRequest.h"
+#include "model/DescribeAppsResult.h"
+#include "model/ModifyConferenceRequest.h"
+#include "model/ModifyConferenceResult.h"
+#include "model/DescribeConferenceAuthInfoRequest.h"
+#include "model/DescribeConferenceAuthInfoResult.h"
+#include "model/DescribeRecordListRequest.h"
+#include "model/DescribeRecordListResult.h"
+#include "model/MuteAudioAllRequest.h"
+#include "model/MuteAudioAllResult.h"
+#include "model/UnmuteAudioRequest.h"
+#include "model/UnmuteAudioResult.h"
+#include "model/MuteAudioRequest.h"
+#include "model/MuteAudioResult.h"
+#include "model/StartAppRequest.h"
+#include "model/StartAppResult.h"
+#include "model/CreateConferenceRequest.h"
+#include "model/CreateConferenceResult.h"
+#include "model/DeleteChannelRequest.h"
+#include "model/DeleteChannelResult.h"
+#include "model/ModifyAppRequest.h"
+#include "model/ModifyAppResult.h"
+#include "model/DescribeRealTimeRecordDetailRequest.h"
+#include "model/DescribeRealTimeRecordDetailResult.h"
+#include "model/RemoveParticipantsRequest.h"
+#include "model/RemoveParticipantsResult.h"
+#include "model/DescribeStatisRequest.h"
+#include "model/DescribeStatisResult.h"
+#include "model/CreateChannelRequest.h"
+#include "model/CreateChannelResult.h"
+#include "model/DescribeRealTimeRecordListRequest.h"
+#include "model/DescribeRealTimeRecordListResult.h"
+#include "model/StopAppRequest.h"
+#include "model/StopAppResult.h"
+#include "model/DeleteConferenceRequest.h"
+#include "model/DeleteConferenceResult.h"
+#include "model/UpdateChannelRequest.h"
+#include "model/UpdateChannelResult.h"
+#include "model/UnmuteAudioAllRequest.h"
+#include "model/UnmuteAudioAllResult.h"
+#include "model/DescribeRecordDetailRequest.h"
+#include "model/DescribeRecordDetailResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		class ALIBABACLOUD_RTC_EXPORT RtcClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::DescribeAppsResult> DescribeAppsOutcome;
+			typedef std::future<DescribeAppsOutcome> DescribeAppsOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeAppsRequest&, const DescribeAppsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAppsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyConferenceResult> ModifyConferenceOutcome;
+			typedef std::future<ModifyConferenceOutcome> ModifyConferenceOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::ModifyConferenceRequest&, const ModifyConferenceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyConferenceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeConferenceAuthInfoResult> DescribeConferenceAuthInfoOutcome;
+			typedef std::future<DescribeConferenceAuthInfoOutcome> DescribeConferenceAuthInfoOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeConferenceAuthInfoRequest&, const DescribeConferenceAuthInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeConferenceAuthInfoAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRecordListResult> DescribeRecordListOutcome;
+			typedef std::future<DescribeRecordListOutcome> DescribeRecordListOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeRecordListRequest&, const DescribeRecordListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRecordListAsyncHandler;
+			typedef Outcome<Error, Model::MuteAudioAllResult> MuteAudioAllOutcome;
+			typedef std::future<MuteAudioAllOutcome> MuteAudioAllOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::MuteAudioAllRequest&, const MuteAudioAllOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MuteAudioAllAsyncHandler;
+			typedef Outcome<Error, Model::UnmuteAudioResult> UnmuteAudioOutcome;
+			typedef std::future<UnmuteAudioOutcome> UnmuteAudioOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::UnmuteAudioRequest&, const UnmuteAudioOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnmuteAudioAsyncHandler;
+			typedef Outcome<Error, Model::MuteAudioResult> MuteAudioOutcome;
+			typedef std::future<MuteAudioOutcome> MuteAudioOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::MuteAudioRequest&, const MuteAudioOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MuteAudioAsyncHandler;
+			typedef Outcome<Error, Model::StartAppResult> StartAppOutcome;
+			typedef std::future<StartAppOutcome> StartAppOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::StartAppRequest&, const StartAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartAppAsyncHandler;
+			typedef Outcome<Error, Model::CreateConferenceResult> CreateConferenceOutcome;
+			typedef std::future<CreateConferenceOutcome> CreateConferenceOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::CreateConferenceRequest&, const CreateConferenceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateConferenceAsyncHandler;
+			typedef Outcome<Error, Model::DeleteChannelResult> DeleteChannelOutcome;
+			typedef std::future<DeleteChannelOutcome> DeleteChannelOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DeleteChannelRequest&, const DeleteChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteChannelAsyncHandler;
+			typedef Outcome<Error, Model::ModifyAppResult> ModifyAppOutcome;
+			typedef std::future<ModifyAppOutcome> ModifyAppOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::ModifyAppRequest&, const ModifyAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyAppAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRealTimeRecordDetailResult> DescribeRealTimeRecordDetailOutcome;
+			typedef std::future<DescribeRealTimeRecordDetailOutcome> DescribeRealTimeRecordDetailOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeRealTimeRecordDetailRequest&, const DescribeRealTimeRecordDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRealTimeRecordDetailAsyncHandler;
+			typedef Outcome<Error, Model::RemoveParticipantsResult> RemoveParticipantsOutcome;
+			typedef std::future<RemoveParticipantsOutcome> RemoveParticipantsOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::RemoveParticipantsRequest&, const RemoveParticipantsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RemoveParticipantsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeStatisResult> DescribeStatisOutcome;
+			typedef std::future<DescribeStatisOutcome> DescribeStatisOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeStatisRequest&, const DescribeStatisOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeStatisAsyncHandler;
+			typedef Outcome<Error, Model::CreateChannelResult> CreateChannelOutcome;
+			typedef std::future<CreateChannelOutcome> CreateChannelOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::CreateChannelRequest&, const CreateChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateChannelAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRealTimeRecordListResult> DescribeRealTimeRecordListOutcome;
+			typedef std::future<DescribeRealTimeRecordListOutcome> DescribeRealTimeRecordListOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeRealTimeRecordListRequest&, const DescribeRealTimeRecordListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRealTimeRecordListAsyncHandler;
+			typedef Outcome<Error, Model::StopAppResult> StopAppOutcome;
+			typedef std::future<StopAppOutcome> StopAppOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::StopAppRequest&, const StopAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopAppAsyncHandler;
+			typedef Outcome<Error, Model::DeleteConferenceResult> DeleteConferenceOutcome;
+			typedef std::future<DeleteConferenceOutcome> DeleteConferenceOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DeleteConferenceRequest&, const DeleteConferenceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteConferenceAsyncHandler;
+			typedef Outcome<Error, Model::UpdateChannelResult> UpdateChannelOutcome;
+			typedef std::future<UpdateChannelOutcome> UpdateChannelOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::UpdateChannelRequest&, const UpdateChannelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateChannelAsyncHandler;
+			typedef Outcome<Error, Model::UnmuteAudioAllResult> UnmuteAudioAllOutcome;
+			typedef std::future<UnmuteAudioAllOutcome> UnmuteAudioAllOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::UnmuteAudioAllRequest&, const UnmuteAudioAllOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnmuteAudioAllAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRecordDetailResult> DescribeRecordDetailOutcome;
+			typedef std::future<DescribeRecordDetailOutcome> DescribeRecordDetailOutcomeCallable;
+			typedef std::function<void(const RtcClient*, const Model::DescribeRecordDetailRequest&, const DescribeRecordDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRecordDetailAsyncHandler;
+
+			RtcClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			RtcClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			RtcClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~RtcClient();
+			DescribeAppsOutcome describeApps(const Model::DescribeAppsRequest &request)const;
+			void describeAppsAsync(const Model::DescribeAppsRequest& request, const DescribeAppsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAppsOutcomeCallable describeAppsCallable(const Model::DescribeAppsRequest& request) const;
+			ModifyConferenceOutcome modifyConference(const Model::ModifyConferenceRequest &request)const;
+			void modifyConferenceAsync(const Model::ModifyConferenceRequest& request, const ModifyConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyConferenceOutcomeCallable modifyConferenceCallable(const Model::ModifyConferenceRequest& request) const;
+			DescribeConferenceAuthInfoOutcome describeConferenceAuthInfo(const Model::DescribeConferenceAuthInfoRequest &request)const;
+			void describeConferenceAuthInfoAsync(const Model::DescribeConferenceAuthInfoRequest& request, const DescribeConferenceAuthInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeConferenceAuthInfoOutcomeCallable describeConferenceAuthInfoCallable(const Model::DescribeConferenceAuthInfoRequest& request) const;
+			DescribeRecordListOutcome describeRecordList(const Model::DescribeRecordListRequest &request)const;
+			void describeRecordListAsync(const Model::DescribeRecordListRequest& request, const DescribeRecordListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRecordListOutcomeCallable describeRecordListCallable(const Model::DescribeRecordListRequest& request) const;
+			MuteAudioAllOutcome muteAudioAll(const Model::MuteAudioAllRequest &request)const;
+			void muteAudioAllAsync(const Model::MuteAudioAllRequest& request, const MuteAudioAllAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			MuteAudioAllOutcomeCallable muteAudioAllCallable(const Model::MuteAudioAllRequest& request) const;
+			UnmuteAudioOutcome unmuteAudio(const Model::UnmuteAudioRequest &request)const;
+			void unmuteAudioAsync(const Model::UnmuteAudioRequest& request, const UnmuteAudioAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UnmuteAudioOutcomeCallable unmuteAudioCallable(const Model::UnmuteAudioRequest& request) const;
+			MuteAudioOutcome muteAudio(const Model::MuteAudioRequest &request)const;
+			void muteAudioAsync(const Model::MuteAudioRequest& request, const MuteAudioAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			MuteAudioOutcomeCallable muteAudioCallable(const Model::MuteAudioRequest& request) const;
+			StartAppOutcome startApp(const Model::StartAppRequest &request)const;
+			void startAppAsync(const Model::StartAppRequest& request, const StartAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StartAppOutcomeCallable startAppCallable(const Model::StartAppRequest& request) const;
+			CreateConferenceOutcome createConference(const Model::CreateConferenceRequest &request)const;
+			void createConferenceAsync(const Model::CreateConferenceRequest& request, const CreateConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateConferenceOutcomeCallable createConferenceCallable(const Model::CreateConferenceRequest& request) const;
+			DeleteChannelOutcome deleteChannel(const Model::DeleteChannelRequest &request)const;
+			void deleteChannelAsync(const Model::DeleteChannelRequest& request, const DeleteChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteChannelOutcomeCallable deleteChannelCallable(const Model::DeleteChannelRequest& request) const;
+			ModifyAppOutcome modifyApp(const Model::ModifyAppRequest &request)const;
+			void modifyAppAsync(const Model::ModifyAppRequest& request, const ModifyAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyAppOutcomeCallable modifyAppCallable(const Model::ModifyAppRequest& request) const;
+			DescribeRealTimeRecordDetailOutcome describeRealTimeRecordDetail(const Model::DescribeRealTimeRecordDetailRequest &request)const;
+			void describeRealTimeRecordDetailAsync(const Model::DescribeRealTimeRecordDetailRequest& request, const DescribeRealTimeRecordDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRealTimeRecordDetailOutcomeCallable describeRealTimeRecordDetailCallable(const Model::DescribeRealTimeRecordDetailRequest& request) const;
+			RemoveParticipantsOutcome removeParticipants(const Model::RemoveParticipantsRequest &request)const;
+			void removeParticipantsAsync(const Model::RemoveParticipantsRequest& request, const RemoveParticipantsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RemoveParticipantsOutcomeCallable removeParticipantsCallable(const Model::RemoveParticipantsRequest& request) const;
+			DescribeStatisOutcome describeStatis(const Model::DescribeStatisRequest &request)const;
+			void describeStatisAsync(const Model::DescribeStatisRequest& request, const DescribeStatisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeStatisOutcomeCallable describeStatisCallable(const Model::DescribeStatisRequest& request) const;
+			CreateChannelOutcome createChannel(const Model::CreateChannelRequest &request)const;
+			void createChannelAsync(const Model::CreateChannelRequest& request, const CreateChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateChannelOutcomeCallable createChannelCallable(const Model::CreateChannelRequest& request) const;
+			DescribeRealTimeRecordListOutcome describeRealTimeRecordList(const Model::DescribeRealTimeRecordListRequest &request)const;
+			void describeRealTimeRecordListAsync(const Model::DescribeRealTimeRecordListRequest& request, const DescribeRealTimeRecordListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRealTimeRecordListOutcomeCallable describeRealTimeRecordListCallable(const Model::DescribeRealTimeRecordListRequest& request) const;
+			StopAppOutcome stopApp(const Model::StopAppRequest &request)const;
+			void stopAppAsync(const Model::StopAppRequest& request, const StopAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopAppOutcomeCallable stopAppCallable(const Model::StopAppRequest& request) const;
+			DeleteConferenceOutcome deleteConference(const Model::DeleteConferenceRequest &request)const;
+			void deleteConferenceAsync(const Model::DeleteConferenceRequest& request, const DeleteConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteConferenceOutcomeCallable deleteConferenceCallable(const Model::DeleteConferenceRequest& request) const;
+			UpdateChannelOutcome updateChannel(const Model::UpdateChannelRequest &request)const;
+			void updateChannelAsync(const Model::UpdateChannelRequest& request, const UpdateChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateChannelOutcomeCallable updateChannelCallable(const Model::UpdateChannelRequest& request) const;
+			UnmuteAudioAllOutcome unmuteAudioAll(const Model::UnmuteAudioAllRequest &request)const;
+			void unmuteAudioAllAsync(const Model::UnmuteAudioAllRequest& request, const UnmuteAudioAllAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UnmuteAudioAllOutcomeCallable unmuteAudioAllCallable(const Model::UnmuteAudioAllRequest& request) const;
+			DescribeRecordDetailOutcome describeRecordDetail(const Model::DescribeRecordDetailRequest &request)const;
+			void describeRecordDetailAsync(const Model::DescribeRecordDetailRequest& request, const DescribeRecordDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRecordDetailOutcomeCallable describeRecordDetailCallable(const Model::DescribeRecordDetailRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_RTC_RTCCLIENT_H_

+ 32 - 0
rtc/include/alibabacloud/rtc/RtcExport.h

@@ -0,0 +1,32 @@
+/*
+ * 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_RTC_RTCEXPORT_H_
+#define ALIBABACLOUD_RTC_RTCEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_RTC_LIBRARY)
+#		define ALIBABACLOUD_RTC_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_RTC_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_RTC_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_RTC_RTCEXPORT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/CreateChannelRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_CREATECHANNELREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_CREATECHANNELREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT CreateChannelRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateChannelRequest();
+				~CreateChannelRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				std::string getChannelId()const;
+				void setChannelId(const std::string& channelId);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				std::string channelId_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_CREATECHANNELREQUEST_H_

+ 55 - 0
rtc/include/alibabacloud/rtc/model/CreateChannelResult.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_RTC_MODEL_CREATECHANNELRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_CREATECHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT CreateChannelResult : public ServiceResult
+			{
+			public:
+
+
+				CreateChannelResult();
+				explicit CreateChannelResult(const std::string &payload);
+				~CreateChannelResult();
+				std::string getNonce()const;
+				std::string getChannelKey()const;
+				int getTimestamp()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string nonce_;
+				std::string channelKey_;
+				int timestamp_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_CREATECHANNELRESULT_H_

+ 123 - 0
rtc/include/alibabacloud/rtc/model/CreateConferenceRequest.h

@@ -0,0 +1,123 @@
+/*
+ * 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_RTC_MODEL_CREATECONFERENCEREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_CREATECONFERENCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT CreateConferenceRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateConferenceRequest();
+				~CreateConferenceRequest();
+
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getType()const;
+				void setType(const std::string& type);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceName()const;
+				void setConferenceName(const std::string& conferenceName);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				int getRemindNotice()const;
+				void setRemindNotice(int remindNotice);
+
+            private:
+				std::string clientToken_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string startTime_;
+				std::string proxy_original_source_ip_;
+				std::string type_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string conferenceName_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string product_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string requestId_;
+				std::string appId_;
+				int remindNotice_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_CREATECONFERENCEREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/CreateConferenceResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_CREATECONFERENCERESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_CREATECONFERENCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT CreateConferenceResult : public ServiceResult
+			{
+			public:
+				struct AuthInfo
+				{
+					std::string nonce;
+					int timestamp;
+					std::string key;
+				};
+
+
+				CreateConferenceResult();
+				explicit CreateConferenceResult(const std::string &payload);
+				~CreateConferenceResult();
+				AuthInfo getAuthInfo()const;
+				std::string getConferenceId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				AuthInfo authInfo_;
+				std::string conferenceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_CREATECONFERENCERESULT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/DeleteChannelRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_DELETECHANNELREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DELETECHANNELREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DeleteChannelRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteChannelRequest();
+				~DeleteChannelRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				std::string getChannelId()const;
+				void setChannelId(const std::string& channelId);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				std::string channelId_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DELETECHANNELREQUEST_H_

+ 49 - 0
rtc/include/alibabacloud/rtc/model/DeleteChannelResult.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_RTC_MODEL_DELETECHANNELRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DELETECHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DeleteChannelResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteChannelResult();
+				explicit DeleteChannelResult(const std::string &payload);
+				~DeleteChannelResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DELETECHANNELRESULT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/DeleteConferenceRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_DELETECONFERENCEREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DELETECONFERENCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DeleteConferenceRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteConferenceRequest();
+				~DeleteConferenceRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DELETECONFERENCEREQUEST_H_

+ 51 - 0
rtc/include/alibabacloud/rtc/model/DeleteConferenceResult.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_RTC_MODEL_DELETECONFERENCERESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DELETECONFERENCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DeleteConferenceResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteConferenceResult();
+				explicit DeleteConferenceResult(const std::string &payload);
+				~DeleteConferenceResult();
+				std::string getConferenceId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DELETECONFERENCERESULT_H_

+ 120 - 0
rtc/include/alibabacloud/rtc/model/DescribeAppsRequest.h

@@ -0,0 +1,120 @@
+/*
+ * 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_RTC_MODEL_DESCRIBEAPPSREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEAPPSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeAppsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeAppsRequest();
+				~DescribeAppsRequest();
+
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				int getPageNum()const;
+				void setPageNum(int pageNum);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getOrder()const;
+				void setOrder(const std::string& order);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
+
+            private:
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string proxy_original_source_ip_;
+				int pageNum_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string requestContent_;
+				int pageSize_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string order_;
+				std::string app_ip_;
+				std::string product_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string requestId_;
+				std::string appId_;
+				std::string status_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEAPPSREQUEST_H_

+ 65 - 0
rtc/include/alibabacloud/rtc/model/DescribeAppsResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_RTC_MODEL_DESCRIBEAPPSRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEAPPSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeAppsResult : public ServiceResult
+			{
+			public:
+				struct App
+				{
+					int status;
+					std::string billType;
+					std::string appId;
+					std::string createTime;
+					std::vector<std::string> serviceAreas;
+					std::string appType;
+					std::string appName;
+				};
+
+
+				DescribeAppsResult();
+				explicit DescribeAppsResult(const std::string &payload);
+				~DescribeAppsResult();
+				int getTotalNum()const;
+				int getTotalPage()const;
+				std::vector<App> getAppList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalNum_;
+				int totalPage_;
+				std::vector<App> appList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEAPPSRESULT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/DescribeConferenceAuthInfoRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_DESCRIBECONFERENCEAUTHINFOREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBECONFERENCEAUTHINFOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeConferenceAuthInfoRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeConferenceAuthInfoRequest();
+				~DescribeConferenceAuthInfoRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBECONFERENCEAUTHINFOREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/DescribeConferenceAuthInfoResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_DESCRIBECONFERENCEAUTHINFORESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBECONFERENCEAUTHINFORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeConferenceAuthInfoResult : public ServiceResult
+			{
+			public:
+				struct AuthInfo
+				{
+					std::string nonce;
+					int timestamp;
+					std::string key;
+				};
+
+
+				DescribeConferenceAuthInfoResult();
+				explicit DescribeConferenceAuthInfoResult(const std::string &payload);
+				~DescribeConferenceAuthInfoResult();
+				AuthInfo getAuthInfo()const;
+				std::string getConferenceId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				AuthInfo authInfo_;
+				std::string conferenceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBECONFERENCEAUTHINFORESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRealTimeRecordDetailRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRealTimeRecordDetailRequest();
+				~DescribeRealTimeRecordDetailRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRecordId()const;
+				void setRecordId(const std::string& recordId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				std::string getChannelId()const;
+				void setChannelId(const std::string& channelId);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string recordId_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				std::string channelId_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILREQUEST_H_

+ 58 - 0
rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordDetailResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRealTimeRecordDetailResult : public ServiceResult
+			{
+			public:
+				struct RecordDetailInfo
+				{
+					std::string uid;
+					std::string deviceType;
+					std::string startTime;
+					std::string sDKVersion;
+				};
+
+
+				DescribeRealTimeRecordDetailResult();
+				explicit DescribeRealTimeRecordDetailResult(const std::string &payload);
+				~DescribeRealTimeRecordDetailResult();
+				std::vector<RecordDetailInfo> getRecordDetailInfos()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<RecordDetailInfo> recordDetailInfos_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDDETAILRESULT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordListRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_DESCRIBEREALTIMERECORDLISTREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDLISTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRealTimeRecordListRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRealTimeRecordListRequest();
+				~DescribeRealTimeRecordListRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string endTime_;
+				std::string callerBid_;
+				std::string startTime_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDLISTREQUEST_H_

+ 61 - 0
rtc/include/alibabacloud/rtc/model/DescribeRealTimeRecordListResult.h

@@ -0,0 +1,61 @@
+/*
+ * 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_RTC_MODEL_DESCRIBEREALTIMERECORDLISTRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRealTimeRecordListResult : public ServiceResult
+			{
+			public:
+				struct CommunicationRecordInfo
+				{
+					bool status;
+					std::string endTime;
+					std::string startTime;
+					std::vector<std::string> callAreas;
+					long onlineUserCnt;
+					std::string recordId;
+					std::string channelId;
+				};
+
+
+				DescribeRealTimeRecordListResult();
+				explicit DescribeRealTimeRecordListResult(const std::string &payload);
+				~DescribeRealTimeRecordListResult();
+				std::vector<CommunicationRecordInfo> getCommunicationRecordInfos()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<CommunicationRecordInfo> communicationRecordInfos_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBEREALTIMERECORDLISTRESULT_H_

+ 120 - 0
rtc/include/alibabacloud/rtc/model/DescribeRecordDetailRequest.h

@@ -0,0 +1,120 @@
+/*
+ * 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_RTC_MODEL_DESCRIBERECORDDETAILREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDDETAILREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRecordDetailRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRecordDetailRequest();
+				~DescribeRecordDetailRequest();
+
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRecordId()const;
+				void setRecordId(const std::string& recordId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getChannelId()const;
+				void setChannelId(const std::string& channelId);
+
+            private:
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string startTime_;
+				std::string proxy_original_source_ip_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string product_;
+				std::string endTime_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string recordId_;
+				std::string requestId_;
+				std::string appId_;
+				std::string channelId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDDETAILREQUEST_H_

+ 69 - 0
rtc/include/alibabacloud/rtc/model/DescribeRecordDetailResult.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_RTC_MODEL_DESCRIBERECORDDETAILRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDDETAILRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRecordDetailResult : public ServiceResult
+			{
+			public:
+				struct Duration
+				{
+					float all;
+					float sd;
+					float fhd;
+					float audio;
+					float hd;
+				};
+				struct RecordDetailInfo
+				{
+					std::string uid;
+					std::string deviceType;
+					std::string endTime;
+					std::string startTime;
+					std::string sDKVersion;
+				};
+
+
+				DescribeRecordDetailResult();
+				explicit DescribeRecordDetailResult(const std::string &payload);
+				~DescribeRecordDetailResult();
+				std::vector<RecordDetailInfo> getRecordDetailInfos()const;
+				Duration getDuration()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<RecordDetailInfo> recordDetailInfos_;
+				Duration duration_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDDETAILRESULT_H_

+ 132 - 0
rtc/include/alibabacloud/rtc/model/DescribeRecordListRequest.h

@@ -0,0 +1,132 @@
+/*
+ * 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_RTC_MODEL_DESCRIBERECORDLISTREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDLISTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRecordListRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRecordListRequest();
+				~DescribeRecordListRequest();
+
+				std::string getSortType()const;
+				void setSortType(const std::string& sortType);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getServiceArea()const;
+				void setServiceArea(const std::string& serviceArea);
+				long getPageSize()const;
+				void setPageSize(long pageSize);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getId()const;
+				void setId(const std::string& id);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getIdType()const;
+				void setIdType(const std::string& idType);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				long getPageNo()const;
+				void setPageNo(long pageNo);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+
+            private:
+				std::string sortType_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string startTime_;
+				std::string proxy_original_source_ip_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string requestContent_;
+				std::string serviceArea_;
+				long pageSize_;
+				std::string callerBidEmail_;
+				std::string id_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string product_;
+				std::string endTime_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string idType_;
+				std::string requestId_;
+				long pageNo_;
+				std::string appId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDLISTREQUEST_H_

+ 67 - 0
rtc/include/alibabacloud/rtc/model/DescribeRecordListResult.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_RTC_MODEL_DESCRIBERECORDLISTRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeRecordListResult : public ServiceResult
+			{
+			public:
+				struct CommunicationRecordInfo
+				{
+					bool status;
+					long totalUserCnt;
+					std::string endTime;
+					std::string startTime;
+					std::vector<std::string> callAreas;
+					std::string recordId;
+					std::string channelId;
+				};
+
+
+				DescribeRecordListResult();
+				explicit DescribeRecordListResult(const std::string &payload);
+				~DescribeRecordListResult();
+				long getPageSize()const;
+				long getTotalCnt()const;
+				long getPageNo()const;
+				std::vector<CommunicationRecordInfo> getCommunicationRecordInfos()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long pageSize_;
+				long totalCnt_;
+				long pageNo_;
+				std::vector<CommunicationRecordInfo> communicationRecordInfos_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBERECORDLISTRESULT_H_

+ 126 - 0
rtc/include/alibabacloud/rtc/model/DescribeStatisRequest.h

@@ -0,0 +1,126 @@
+/*
+ * 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_RTC_MODEL_DESCRIBESTATISREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBESTATISREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeStatisRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeStatisRequest();
+				~DescribeStatisRequest();
+
+				std::string getSortType()const;
+				void setSortType(const std::string& sortType);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getDataType()const;
+				void setDataType(const std::string& dataType);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getServiceArea()const;
+				void setServiceArea(const std::string& serviceArea);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getInterval()const;
+				void setInterval(const std::string& interval);
+
+            private:
+				std::string sortType_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string startTime_;
+				std::string proxy_original_source_ip_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string dataType_;
+				std::string requestContent_;
+				std::string serviceArea_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string product_;
+				std::string endTime_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string requestId_;
+				std::string appId_;
+				std::string interval_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBESTATISREQUEST_H_

+ 78 - 0
rtc/include/alibabacloud/rtc/model/DescribeStatisResult.h

@@ -0,0 +1,78 @@
+/*
+ * 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_RTC_MODEL_DESCRIBESTATISRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_DESCRIBESTATISRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT DescribeStatisResult : public ServiceResult
+			{
+			public:
+				struct StatisInfo
+				{
+					struct DurationItem
+					{
+						float hdDuration;
+						float sdDuration;
+						float fhdDuration;
+						float totalDuration;
+						float audioDuration;
+					};
+					struct UserStatisItem
+					{
+						long conSessionPeak;
+						std::string conSessionPeakTime;
+						long activeUserCnt;
+					};
+					struct ChannelStatisItem
+					{
+						long accChannelCnt;
+						std::string conChannelPeakTime;
+						long conChannelPeak;
+					};
+					std::vector<StatisInfo::UserStatisItem> userStatis;
+					std::vector<StatisInfo::DurationItem> duration;
+					std::string time;
+					std::vector<StatisInfo::ChannelStatisItem> channelStatis;
+				};
+
+
+				DescribeStatisResult();
+				explicit DescribeStatisResult(const std::string &payload);
+				~DescribeStatisResult();
+				std::vector<StatisInfo> getStatisInfos()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<StatisInfo> statisInfos_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_DESCRIBESTATISRESULT_H_

+ 111 - 0
rtc/include/alibabacloud/rtc/model/ModifyAppRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_RTC_MODEL_MODIFYAPPREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_MODIFYAPPREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT ModifyAppRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyAppRequest();
+				~ModifyAppRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getAppName()const;
+				void setAppName(const std::string& appName);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string appName_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MODIFYAPPREQUEST_H_

+ 49 - 0
rtc/include/alibabacloud/rtc/model/ModifyAppResult.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_RTC_MODEL_MODIFYAPPRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_MODIFYAPPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT ModifyAppResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyAppResult();
+				explicit ModifyAppResult(const std::string &payload);
+				~ModifyAppResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MODIFYAPPRESULT_H_

+ 123 - 0
rtc/include/alibabacloud/rtc/model/ModifyConferenceRequest.h

@@ -0,0 +1,123 @@
+/*
+ * 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_RTC_MODEL_MODIFYCONFERENCEREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_MODIFYCONFERENCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT ModifyConferenceRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyConferenceRequest();
+				~ModifyConferenceRequest();
+
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getType()const;
+				void setType(const std::string& type);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getConferenceName()const;
+				void setConferenceName(const std::string& conferenceName);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				int getRemindNotice()const;
+				void setRemindNotice(int remindNotice);
+
+            private:
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string startTime_;
+				std::string proxy_original_source_ip_;
+				std::string type_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string conferenceName_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string product_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string version_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::string requestId_;
+				std::string appId_;
+				int remindNotice_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MODIFYCONFERENCEREQUEST_H_

+ 51 - 0
rtc/include/alibabacloud/rtc/model/ModifyConferenceResult.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_RTC_MODEL_MODIFYCONFERENCERESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_MODIFYCONFERENCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT ModifyConferenceResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyConferenceResult();
+				explicit ModifyConferenceResult(const std::string &payload);
+				~ModifyConferenceResult();
+				std::string getConferenceId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MODIFYCONFERENCERESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/MuteAudioAllRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_MUTEAUDIOALLREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_MUTEAUDIOALLREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT MuteAudioAllRequest : public RpcServiceRequest
+			{
+
+			public:
+				MuteAudioAllRequest();
+				~MuteAudioAllRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getParticipantId()const;
+				void setParticipantId(const std::string& participantId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string participantId_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MUTEAUDIOALLREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/MuteAudioAllResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_MUTEAUDIOALLRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_MUTEAUDIOALLRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT MuteAudioAllResult : public ServiceResult
+			{
+			public:
+				struct Participant
+				{
+					std::string message;
+					std::string id;
+					std::string code;
+				};
+
+
+				MuteAudioAllResult();
+				explicit MuteAudioAllResult(const std::string &payload);
+				~MuteAudioAllResult();
+				std::string getConferenceId()const;
+				std::vector<Participant> getParticipants()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+				std::vector<Participant> participants_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MUTEAUDIOALLRESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/MuteAudioRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_MUTEAUDIOREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_MUTEAUDIOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT MuteAudioRequest : public RpcServiceRequest
+			{
+
+			public:
+				MuteAudioRequest();
+				~MuteAudioRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::vector<std::string> getParticipantIds()const;
+				void setParticipantIds(const std::vector<std::string>& participantIds);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				std::vector<std::string> participantIds_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MUTEAUDIOREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/MuteAudioResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_MUTEAUDIORESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_MUTEAUDIORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT MuteAudioResult : public ServiceResult
+			{
+			public:
+				struct Participant
+				{
+					std::string message;
+					std::string id;
+					std::string code;
+				};
+
+
+				MuteAudioResult();
+				explicit MuteAudioResult(const std::string &payload);
+				~MuteAudioResult();
+				std::string getConferenceId()const;
+				std::vector<Participant> getParticipants()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+				std::vector<Participant> participants_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_MUTEAUDIORESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/RemoveParticipantsRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_REMOVEPARTICIPANTSREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_REMOVEPARTICIPANTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT RemoveParticipantsRequest : public RpcServiceRequest
+			{
+
+			public:
+				RemoveParticipantsRequest();
+				~RemoveParticipantsRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::vector<std::string> getParticipantIds()const;
+				void setParticipantIds(const std::vector<std::string>& participantIds);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				std::vector<std::string> participantIds_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_REMOVEPARTICIPANTSREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/RemoveParticipantsResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_REMOVEPARTICIPANTSRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_REMOVEPARTICIPANTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT RemoveParticipantsResult : public ServiceResult
+			{
+			public:
+				struct Participant
+				{
+					std::string message;
+					std::string id;
+					std::string code;
+				};
+
+
+				RemoveParticipantsResult();
+				explicit RemoveParticipantsResult(const std::string &payload);
+				~RemoveParticipantsResult();
+				std::string getConferenceId()const;
+				std::vector<Participant> getParticipants()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+				std::vector<Participant> participants_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_REMOVEPARTICIPANTSRESULT_H_

+ 108 - 0
rtc/include/alibabacloud/rtc/model/StartAppRequest.h

@@ -0,0 +1,108 @@
+/*
+ * 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_RTC_MODEL_STARTAPPREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_STARTAPPREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT StartAppRequest : public RpcServiceRequest
+			{
+
+			public:
+				StartAppRequest();
+				~StartAppRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_STARTAPPREQUEST_H_

+ 49 - 0
rtc/include/alibabacloud/rtc/model/StartAppResult.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_RTC_MODEL_STARTAPPRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_STARTAPPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT StartAppResult : public ServiceResult
+			{
+			public:
+
+
+				StartAppResult();
+				explicit StartAppResult(const std::string &payload);
+				~StartAppResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_STARTAPPRESULT_H_

+ 108 - 0
rtc/include/alibabacloud/rtc/model/StopAppRequest.h

@@ -0,0 +1,108 @@
+/*
+ * 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_RTC_MODEL_STOPAPPREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_STOPAPPREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT StopAppRequest : public RpcServiceRequest
+			{
+
+			public:
+				StopAppRequest();
+				~StopAppRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_STOPAPPREQUEST_H_

+ 49 - 0
rtc/include/alibabacloud/rtc/model/StopAppResult.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_RTC_MODEL_STOPAPPRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_STOPAPPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT StopAppResult : public ServiceResult
+			{
+			public:
+
+
+				StopAppResult();
+				explicit StopAppResult(const std::string &payload);
+				~StopAppResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_STOPAPPRESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/UnmuteAudioAllRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_UNMUTEAUDIOALLREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOALLREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UnmuteAudioAllRequest : public RpcServiceRequest
+			{
+
+			public:
+				UnmuteAudioAllRequest();
+				~UnmuteAudioAllRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getParticipantId()const;
+				void setParticipantId(const std::string& participantId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string participantId_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOALLREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/UnmuteAudioAllResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_UNMUTEAUDIOALLRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOALLRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UnmuteAudioAllResult : public ServiceResult
+			{
+			public:
+				struct Participant
+				{
+					std::string message;
+					std::string id;
+					std::string code;
+				};
+
+
+				UnmuteAudioAllResult();
+				explicit UnmuteAudioAllResult(const std::string &payload);
+				~UnmuteAudioAllResult();
+				std::string getConferenceId()const;
+				std::vector<Participant> getParticipants()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+				std::vector<Participant> participants_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOALLRESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/UnmuteAudioRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_UNMUTEAUDIOREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UnmuteAudioRequest : public RpcServiceRequest
+			{
+
+			public:
+				UnmuteAudioRequest();
+				~UnmuteAudioRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				std::vector<std::string> getParticipantIds()const;
+				void setParticipantIds(const std::vector<std::string>& participantIds);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getConferenceId()const;
+				void setConferenceId(const std::string& conferenceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				std::vector<std::string> participantIds_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string conferenceId_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIOREQUEST_H_

+ 59 - 0
rtc/include/alibabacloud/rtc/model/UnmuteAudioResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RTC_MODEL_UNMUTEAUDIORESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UnmuteAudioResult : public ServiceResult
+			{
+			public:
+				struct Participant
+				{
+					std::string message;
+					std::string id;
+					std::string code;
+				};
+
+
+				UnmuteAudioResult();
+				explicit UnmuteAudioResult(const std::string &payload);
+				~UnmuteAudioResult();
+				std::string getConferenceId()const;
+				std::vector<Participant> getParticipants()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string conferenceId_;
+				std::vector<Participant> participants_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UNMUTEAUDIORESULT_H_

+ 114 - 0
rtc/include/alibabacloud/rtc/model/UpdateChannelRequest.h

@@ -0,0 +1,114 @@
+/*
+ * 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_RTC_MODEL_UPDATECHANNELREQUEST_H_
+#define ALIBABACLOUD_RTC_MODEL_UPDATECHANNELREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UpdateChannelRequest : public RpcServiceRequest
+			{
+
+			public:
+				UpdateChannelRequest();
+				~UpdateChannelRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getProduct()const;
+				void setProduct(const std::string& product);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getVersion()const;
+				void setVersion(const std::string& version);
+				std::string getNonce()const;
+				void setNonce(const std::string& nonce);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getAppId()const;
+				void setAppId(const std::string& appId);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				std::string getChannelId()const;
+				void setChannelId(const std::string& channelId);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+
+            private:
+				std::string app_ip_;
+				std::string product_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string callerBid_;
+				long ownerId_;
+				std::string proxy_original_source_ip_;
+				std::string version_;
+				std::string nonce_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				std::string accessKeyId_;
+				bool security_transport_;
+				std::string securityToken_;
+				std::string requestId_;
+				std::string requestContent_;
+				std::string appId_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				std::string channelId_;
+				long callerUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UPDATECHANNELREQUEST_H_

+ 53 - 0
rtc/include/alibabacloud/rtc/model/UpdateChannelResult.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_RTC_MODEL_UPDATECHANNELRESULT_H_
+#define ALIBABACLOUD_RTC_MODEL_UPDATECHANNELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/rtc/RtcExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Rtc
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RTC_EXPORT UpdateChannelResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateChannelResult();
+				explicit UpdateChannelResult(const std::string &payload);
+				~UpdateChannelResult();
+				std::string getNonce()const;
+				int getTimestamp()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string nonce_;
+				int timestamp_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RTC_MODEL_UPDATECHANNELRESULT_H_

+ 809 - 0
rtc/src/RtcClient.cc

@@ -0,0 +1,809 @@
+/*
+ * 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/rtc/RtcClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+namespace
+{
+	const std::string SERVICE_NAME = "rtc";
+}
+
+RtcClient::RtcClient(const Credentials &credentials, const ClientConfiguration &configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "rtc");
+}
+
+RtcClient::RtcClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "rtc");
+}
+
+RtcClient::RtcClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "rtc");
+}
+
+RtcClient::~RtcClient()
+{}
+
+RtcClient::DescribeAppsOutcome RtcClient::describeApps(const DescribeAppsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAppsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAppsOutcome(DescribeAppsResult(outcome.result()));
+	else
+		return DescribeAppsOutcome(outcome.error());
+}
+
+void RtcClient::describeAppsAsync(const DescribeAppsRequest& request, const DescribeAppsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeApps(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeAppsOutcomeCallable RtcClient::describeAppsCallable(const DescribeAppsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAppsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeApps(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::ModifyConferenceOutcome RtcClient::modifyConference(const ModifyConferenceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyConferenceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyConferenceOutcome(ModifyConferenceResult(outcome.result()));
+	else
+		return ModifyConferenceOutcome(outcome.error());
+}
+
+void RtcClient::modifyConferenceAsync(const ModifyConferenceRequest& request, const ModifyConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyConference(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::ModifyConferenceOutcomeCallable RtcClient::modifyConferenceCallable(const ModifyConferenceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyConferenceOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyConference(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeConferenceAuthInfoOutcome RtcClient::describeConferenceAuthInfo(const DescribeConferenceAuthInfoRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeConferenceAuthInfoOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeConferenceAuthInfoOutcome(DescribeConferenceAuthInfoResult(outcome.result()));
+	else
+		return DescribeConferenceAuthInfoOutcome(outcome.error());
+}
+
+void RtcClient::describeConferenceAuthInfoAsync(const DescribeConferenceAuthInfoRequest& request, const DescribeConferenceAuthInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeConferenceAuthInfo(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeConferenceAuthInfoOutcomeCallable RtcClient::describeConferenceAuthInfoCallable(const DescribeConferenceAuthInfoRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeConferenceAuthInfoOutcome()>>(
+			[this, request]()
+			{
+			return this->describeConferenceAuthInfo(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeRecordListOutcome RtcClient::describeRecordList(const DescribeRecordListRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRecordListOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRecordListOutcome(DescribeRecordListResult(outcome.result()));
+	else
+		return DescribeRecordListOutcome(outcome.error());
+}
+
+void RtcClient::describeRecordListAsync(const DescribeRecordListRequest& request, const DescribeRecordListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRecordList(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeRecordListOutcomeCallable RtcClient::describeRecordListCallable(const DescribeRecordListRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRecordListOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRecordList(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::MuteAudioAllOutcome RtcClient::muteAudioAll(const MuteAudioAllRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return MuteAudioAllOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return MuteAudioAllOutcome(MuteAudioAllResult(outcome.result()));
+	else
+		return MuteAudioAllOutcome(outcome.error());
+}
+
+void RtcClient::muteAudioAllAsync(const MuteAudioAllRequest& request, const MuteAudioAllAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, muteAudioAll(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::MuteAudioAllOutcomeCallable RtcClient::muteAudioAllCallable(const MuteAudioAllRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<MuteAudioAllOutcome()>>(
+			[this, request]()
+			{
+			return this->muteAudioAll(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::UnmuteAudioOutcome RtcClient::unmuteAudio(const UnmuteAudioRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UnmuteAudioOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UnmuteAudioOutcome(UnmuteAudioResult(outcome.result()));
+	else
+		return UnmuteAudioOutcome(outcome.error());
+}
+
+void RtcClient::unmuteAudioAsync(const UnmuteAudioRequest& request, const UnmuteAudioAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, unmuteAudio(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::UnmuteAudioOutcomeCallable RtcClient::unmuteAudioCallable(const UnmuteAudioRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UnmuteAudioOutcome()>>(
+			[this, request]()
+			{
+			return this->unmuteAudio(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::MuteAudioOutcome RtcClient::muteAudio(const MuteAudioRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return MuteAudioOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return MuteAudioOutcome(MuteAudioResult(outcome.result()));
+	else
+		return MuteAudioOutcome(outcome.error());
+}
+
+void RtcClient::muteAudioAsync(const MuteAudioRequest& request, const MuteAudioAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, muteAudio(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::MuteAudioOutcomeCallable RtcClient::muteAudioCallable(const MuteAudioRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<MuteAudioOutcome()>>(
+			[this, request]()
+			{
+			return this->muteAudio(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::StartAppOutcome RtcClient::startApp(const StartAppRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return StartAppOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return StartAppOutcome(StartAppResult(outcome.result()));
+	else
+		return StartAppOutcome(outcome.error());
+}
+
+void RtcClient::startAppAsync(const StartAppRequest& request, const StartAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, startApp(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::StartAppOutcomeCallable RtcClient::startAppCallable(const StartAppRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<StartAppOutcome()>>(
+			[this, request]()
+			{
+			return this->startApp(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::CreateConferenceOutcome RtcClient::createConference(const CreateConferenceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateConferenceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateConferenceOutcome(CreateConferenceResult(outcome.result()));
+	else
+		return CreateConferenceOutcome(outcome.error());
+}
+
+void RtcClient::createConferenceAsync(const CreateConferenceRequest& request, const CreateConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createConference(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::CreateConferenceOutcomeCallable RtcClient::createConferenceCallable(const CreateConferenceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateConferenceOutcome()>>(
+			[this, request]()
+			{
+			return this->createConference(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DeleteChannelOutcome RtcClient::deleteChannel(const DeleteChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteChannelOutcome(DeleteChannelResult(outcome.result()));
+	else
+		return DeleteChannelOutcome(outcome.error());
+}
+
+void RtcClient::deleteChannelAsync(const DeleteChannelRequest& request, const DeleteChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DeleteChannelOutcomeCallable RtcClient::deleteChannelCallable(const DeleteChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::ModifyAppOutcome RtcClient::modifyApp(const ModifyAppRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyAppOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyAppOutcome(ModifyAppResult(outcome.result()));
+	else
+		return ModifyAppOutcome(outcome.error());
+}
+
+void RtcClient::modifyAppAsync(const ModifyAppRequest& request, const ModifyAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyApp(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::ModifyAppOutcomeCallable RtcClient::modifyAppCallable(const ModifyAppRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyAppOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyApp(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeRealTimeRecordDetailOutcome RtcClient::describeRealTimeRecordDetail(const DescribeRealTimeRecordDetailRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRealTimeRecordDetailOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRealTimeRecordDetailOutcome(DescribeRealTimeRecordDetailResult(outcome.result()));
+	else
+		return DescribeRealTimeRecordDetailOutcome(outcome.error());
+}
+
+void RtcClient::describeRealTimeRecordDetailAsync(const DescribeRealTimeRecordDetailRequest& request, const DescribeRealTimeRecordDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRealTimeRecordDetail(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeRealTimeRecordDetailOutcomeCallable RtcClient::describeRealTimeRecordDetailCallable(const DescribeRealTimeRecordDetailRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRealTimeRecordDetailOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRealTimeRecordDetail(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::RemoveParticipantsOutcome RtcClient::removeParticipants(const RemoveParticipantsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RemoveParticipantsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RemoveParticipantsOutcome(RemoveParticipantsResult(outcome.result()));
+	else
+		return RemoveParticipantsOutcome(outcome.error());
+}
+
+void RtcClient::removeParticipantsAsync(const RemoveParticipantsRequest& request, const RemoveParticipantsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, removeParticipants(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::RemoveParticipantsOutcomeCallable RtcClient::removeParticipantsCallable(const RemoveParticipantsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RemoveParticipantsOutcome()>>(
+			[this, request]()
+			{
+			return this->removeParticipants(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeStatisOutcome RtcClient::describeStatis(const DescribeStatisRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeStatisOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeStatisOutcome(DescribeStatisResult(outcome.result()));
+	else
+		return DescribeStatisOutcome(outcome.error());
+}
+
+void RtcClient::describeStatisAsync(const DescribeStatisRequest& request, const DescribeStatisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeStatis(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeStatisOutcomeCallable RtcClient::describeStatisCallable(const DescribeStatisRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeStatisOutcome()>>(
+			[this, request]()
+			{
+			return this->describeStatis(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::CreateChannelOutcome RtcClient::createChannel(const CreateChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateChannelOutcome(CreateChannelResult(outcome.result()));
+	else
+		return CreateChannelOutcome(outcome.error());
+}
+
+void RtcClient::createChannelAsync(const CreateChannelRequest& request, const CreateChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::CreateChannelOutcomeCallable RtcClient::createChannelCallable(const CreateChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->createChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeRealTimeRecordListOutcome RtcClient::describeRealTimeRecordList(const DescribeRealTimeRecordListRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRealTimeRecordListOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRealTimeRecordListOutcome(DescribeRealTimeRecordListResult(outcome.result()));
+	else
+		return DescribeRealTimeRecordListOutcome(outcome.error());
+}
+
+void RtcClient::describeRealTimeRecordListAsync(const DescribeRealTimeRecordListRequest& request, const DescribeRealTimeRecordListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRealTimeRecordList(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeRealTimeRecordListOutcomeCallable RtcClient::describeRealTimeRecordListCallable(const DescribeRealTimeRecordListRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRealTimeRecordListOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRealTimeRecordList(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::StopAppOutcome RtcClient::stopApp(const StopAppRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return StopAppOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return StopAppOutcome(StopAppResult(outcome.result()));
+	else
+		return StopAppOutcome(outcome.error());
+}
+
+void RtcClient::stopAppAsync(const StopAppRequest& request, const StopAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, stopApp(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::StopAppOutcomeCallable RtcClient::stopAppCallable(const StopAppRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<StopAppOutcome()>>(
+			[this, request]()
+			{
+			return this->stopApp(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DeleteConferenceOutcome RtcClient::deleteConference(const DeleteConferenceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteConferenceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteConferenceOutcome(DeleteConferenceResult(outcome.result()));
+	else
+		return DeleteConferenceOutcome(outcome.error());
+}
+
+void RtcClient::deleteConferenceAsync(const DeleteConferenceRequest& request, const DeleteConferenceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteConference(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DeleteConferenceOutcomeCallable RtcClient::deleteConferenceCallable(const DeleteConferenceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteConferenceOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteConference(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::UpdateChannelOutcome RtcClient::updateChannel(const UpdateChannelRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateChannelOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateChannelOutcome(UpdateChannelResult(outcome.result()));
+	else
+		return UpdateChannelOutcome(outcome.error());
+}
+
+void RtcClient::updateChannelAsync(const UpdateChannelRequest& request, const UpdateChannelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateChannel(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::UpdateChannelOutcomeCallable RtcClient::updateChannelCallable(const UpdateChannelRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateChannelOutcome()>>(
+			[this, request]()
+			{
+			return this->updateChannel(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::UnmuteAudioAllOutcome RtcClient::unmuteAudioAll(const UnmuteAudioAllRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UnmuteAudioAllOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UnmuteAudioAllOutcome(UnmuteAudioAllResult(outcome.result()));
+	else
+		return UnmuteAudioAllOutcome(outcome.error());
+}
+
+void RtcClient::unmuteAudioAllAsync(const UnmuteAudioAllRequest& request, const UnmuteAudioAllAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, unmuteAudioAll(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::UnmuteAudioAllOutcomeCallable RtcClient::unmuteAudioAllCallable(const UnmuteAudioAllRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UnmuteAudioAllOutcome()>>(
+			[this, request]()
+			{
+			return this->unmuteAudioAll(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+RtcClient::DescribeRecordDetailOutcome RtcClient::describeRecordDetail(const DescribeRecordDetailRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRecordDetailOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRecordDetailOutcome(DescribeRecordDetailResult(outcome.result()));
+	else
+		return DescribeRecordDetailOutcome(outcome.error());
+}
+
+void RtcClient::describeRecordDetailAsync(const DescribeRecordDetailRequest& request, const DescribeRecordDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRecordDetail(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RtcClient::DescribeRecordDetailOutcomeCallable RtcClient::describeRecordDetailCallable(const DescribeRecordDetailRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRecordDetailOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRecordDetail(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 269 - 0
rtc/src/model/CreateChannelRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/CreateChannelRequest.h>
+
+using AlibabaCloud::Rtc::Model::CreateChannelRequest;
+
+CreateChannelRequest::CreateChannelRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "CreateChannel")
+{}
+
+CreateChannelRequest::~CreateChannelRequest()
+{}
+
+std::string CreateChannelRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void CreateChannelRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string CreateChannelRequest::getProduct()const
+{
+	return product_;
+}
+
+void CreateChannelRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long CreateChannelRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void CreateChannelRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool CreateChannelRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void CreateChannelRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string CreateChannelRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void CreateChannelRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long CreateChannelRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void CreateChannelRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string CreateChannelRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void CreateChannelRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string CreateChannelRequest::getVersion()const
+{
+	return version_;
+}
+
+void CreateChannelRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string CreateChannelRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void CreateChannelRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string CreateChannelRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void CreateChannelRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool CreateChannelRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void CreateChannelRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool CreateChannelRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void CreateChannelRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string CreateChannelRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void CreateChannelRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool CreateChannelRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void CreateChannelRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string CreateChannelRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void CreateChannelRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string CreateChannelRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void CreateChannelRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string CreateChannelRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void CreateChannelRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string CreateChannelRequest::getAppId()const
+{
+	return appId_;
+}
+
+void CreateChannelRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string CreateChannelRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void CreateChannelRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string CreateChannelRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void CreateChannelRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+std::string CreateChannelRequest::getChannelId()const
+{
+	return channelId_;
+}
+
+void CreateChannelRequest::setChannelId(const std::string& channelId)
+{
+	channelId_ = channelId;
+	setParameter("ChannelId", channelId);
+}
+
+long CreateChannelRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void CreateChannelRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 66 - 0
rtc/src/model/CreateChannelResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/CreateChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+CreateChannelResult::CreateChannelResult() :
+	ServiceResult()
+{}
+
+CreateChannelResult::CreateChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateChannelResult::~CreateChannelResult()
+{}
+
+void CreateChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["ChannelKey"].isNull())
+		channelKey_ = value["ChannelKey"].asString();
+	if(!value["Nonce"].isNull())
+		nonce_ = value["Nonce"].asString();
+	if(!value["Timestamp"].isNull())
+		timestamp_ = std::stoi(value["Timestamp"].asString());
+
+}
+
+std::string CreateChannelResult::getNonce()const
+{
+	return nonce_;
+}
+
+std::string CreateChannelResult::getChannelKey()const
+{
+	return channelKey_;
+}
+
+int CreateChannelResult::getTimestamp()const
+{
+	return timestamp_;
+}
+

+ 313 - 0
rtc/src/model/CreateConferenceRequest.cc

@@ -0,0 +1,313 @@
+/*
+ * 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/rtc/model/CreateConferenceRequest.h>
+
+using AlibabaCloud::Rtc::Model::CreateConferenceRequest;
+
+CreateConferenceRequest::CreateConferenceRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "CreateConference")
+{}
+
+CreateConferenceRequest::~CreateConferenceRequest()
+{}
+
+std::string CreateConferenceRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void CreateConferenceRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+long CreateConferenceRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void CreateConferenceRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool CreateConferenceRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void CreateConferenceRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string CreateConferenceRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void CreateConferenceRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string CreateConferenceRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void CreateConferenceRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string CreateConferenceRequest::getType()const
+{
+	return type_;
+}
+
+void CreateConferenceRequest::setType(const std::string& type)
+{
+	type_ = type;
+	setParameter("Type", type);
+}
+
+std::string CreateConferenceRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void CreateConferenceRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string CreateConferenceRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void CreateConferenceRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string CreateConferenceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void CreateConferenceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string CreateConferenceRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void CreateConferenceRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string CreateConferenceRequest::getConferenceName()const
+{
+	return conferenceName_;
+}
+
+void CreateConferenceRequest::setConferenceName(const std::string& conferenceName)
+{
+	conferenceName_ = conferenceName;
+	setParameter("ConferenceName", conferenceName);
+}
+
+std::string CreateConferenceRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void CreateConferenceRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string CreateConferenceRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void CreateConferenceRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string CreateConferenceRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void CreateConferenceRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long CreateConferenceRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void CreateConferenceRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string CreateConferenceRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void CreateConferenceRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string CreateConferenceRequest::getProduct()const
+{
+	return product_;
+}
+
+void CreateConferenceRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string CreateConferenceRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void CreateConferenceRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long CreateConferenceRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void CreateConferenceRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string CreateConferenceRequest::getVersion()const
+{
+	return version_;
+}
+
+void CreateConferenceRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool CreateConferenceRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void CreateConferenceRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool CreateConferenceRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void CreateConferenceRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool CreateConferenceRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void CreateConferenceRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string CreateConferenceRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void CreateConferenceRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string CreateConferenceRequest::getAppId()const
+{
+	return appId_;
+}
+
+void CreateConferenceRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+int CreateConferenceRequest::getRemindNotice()const
+{
+	return remindNotice_;
+}
+
+void CreateConferenceRequest::setRemindNotice(int remindNotice)
+{
+	remindNotice_ = remindNotice;
+	setParameter("RemindNotice", std::to_string(remindNotice));
+}
+

+ 64 - 0
rtc/src/model/CreateConferenceResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/CreateConferenceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+CreateConferenceResult::CreateConferenceResult() :
+	ServiceResult()
+{}
+
+CreateConferenceResult::CreateConferenceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateConferenceResult::~CreateConferenceResult()
+{}
+
+void CreateConferenceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto authInfoNode = value["AuthInfo"];
+	if(!authInfoNode["Key"].isNull())
+		authInfo_.key = authInfoNode["Key"].asString();
+	if(!authInfoNode["Nonce"].isNull())
+		authInfo_.nonce = authInfoNode["Nonce"].asString();
+	if(!authInfoNode["Timestamp"].isNull())
+		authInfo_.timestamp = std::stoi(authInfoNode["Timestamp"].asString());
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+CreateConferenceResult::AuthInfo CreateConferenceResult::getAuthInfo()const
+{
+	return authInfo_;
+}
+
+std::string CreateConferenceResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+

+ 269 - 0
rtc/src/model/DeleteChannelRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/DeleteChannelRequest.h>
+
+using AlibabaCloud::Rtc::Model::DeleteChannelRequest;
+
+DeleteChannelRequest::DeleteChannelRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DeleteChannel")
+{}
+
+DeleteChannelRequest::~DeleteChannelRequest()
+{}
+
+std::string DeleteChannelRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DeleteChannelRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DeleteChannelRequest::getProduct()const
+{
+	return product_;
+}
+
+void DeleteChannelRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long DeleteChannelRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DeleteChannelRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DeleteChannelRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DeleteChannelRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DeleteChannelRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DeleteChannelRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DeleteChannelRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DeleteChannelRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DeleteChannelRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DeleteChannelRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DeleteChannelRequest::getVersion()const
+{
+	return version_;
+}
+
+void DeleteChannelRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string DeleteChannelRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DeleteChannelRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DeleteChannelRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DeleteChannelRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool DeleteChannelRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DeleteChannelRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DeleteChannelRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DeleteChannelRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string DeleteChannelRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DeleteChannelRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool DeleteChannelRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DeleteChannelRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DeleteChannelRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DeleteChannelRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DeleteChannelRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DeleteChannelRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DeleteChannelRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DeleteChannelRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DeleteChannelRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DeleteChannelRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DeleteChannelRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DeleteChannelRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DeleteChannelRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DeleteChannelRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+std::string DeleteChannelRequest::getChannelId()const
+{
+	return channelId_;
+}
+
+void DeleteChannelRequest::setChannelId(const std::string& channelId)
+{
+	channelId_ = channelId;
+	setParameter("ChannelId", channelId);
+}
+
+long DeleteChannelRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DeleteChannelRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 45 - 0
rtc/src/model/DeleteChannelResult.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/rtc/model/DeleteChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DeleteChannelResult::DeleteChannelResult() :
+	ServiceResult()
+{}
+
+DeleteChannelResult::DeleteChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteChannelResult::~DeleteChannelResult()
+{}
+
+void DeleteChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 269 - 0
rtc/src/model/DeleteConferenceRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/DeleteConferenceRequest.h>
+
+using AlibabaCloud::Rtc::Model::DeleteConferenceRequest;
+
+DeleteConferenceRequest::DeleteConferenceRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DeleteConference")
+{}
+
+DeleteConferenceRequest::~DeleteConferenceRequest()
+{}
+
+std::string DeleteConferenceRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DeleteConferenceRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DeleteConferenceRequest::getProduct()const
+{
+	return product_;
+}
+
+void DeleteConferenceRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long DeleteConferenceRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DeleteConferenceRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DeleteConferenceRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DeleteConferenceRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DeleteConferenceRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DeleteConferenceRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DeleteConferenceRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DeleteConferenceRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DeleteConferenceRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DeleteConferenceRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DeleteConferenceRequest::getVersion()const
+{
+	return version_;
+}
+
+void DeleteConferenceRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string DeleteConferenceRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DeleteConferenceRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DeleteConferenceRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DeleteConferenceRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool DeleteConferenceRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DeleteConferenceRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DeleteConferenceRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DeleteConferenceRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string DeleteConferenceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DeleteConferenceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool DeleteConferenceRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DeleteConferenceRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DeleteConferenceRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DeleteConferenceRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DeleteConferenceRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void DeleteConferenceRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string DeleteConferenceRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DeleteConferenceRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DeleteConferenceRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DeleteConferenceRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DeleteConferenceRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DeleteConferenceRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DeleteConferenceRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DeleteConferenceRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DeleteConferenceRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DeleteConferenceRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DeleteConferenceRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DeleteConferenceRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 52 - 0
rtc/src/model/DeleteConferenceResult.cc

@@ -0,0 +1,52 @@
+/*
+ * 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/rtc/model/DeleteConferenceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DeleteConferenceResult::DeleteConferenceResult() :
+	ServiceResult()
+{}
+
+DeleteConferenceResult::DeleteConferenceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteConferenceResult::~DeleteConferenceResult()
+{}
+
+void DeleteConferenceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string DeleteConferenceResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+

+ 302 - 0
rtc/src/model/DescribeAppsRequest.cc

@@ -0,0 +1,302 @@
+/*
+ * 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/rtc/model/DescribeAppsRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeAppsRequest;
+
+DescribeAppsRequest::DescribeAppsRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeApps")
+{}
+
+DescribeAppsRequest::~DescribeAppsRequest()
+{}
+
+long DescribeAppsRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeAppsRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeAppsRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeAppsRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeAppsRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeAppsRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+int DescribeAppsRequest::getPageNum()const
+{
+	return pageNum_;
+}
+
+void DescribeAppsRequest::setPageNum(int pageNum)
+{
+	pageNum_ = pageNum;
+	setParameter("PageNum", std::to_string(pageNum));
+}
+
+std::string DescribeAppsRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeAppsRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeAppsRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeAppsRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string DescribeAppsRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeAppsRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string DescribeAppsRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeAppsRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeAppsRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeAppsRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+int DescribeAppsRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void DescribeAppsRequest::setPageSize(int pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+std::string DescribeAppsRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeAppsRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeAppsRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeAppsRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeAppsRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeAppsRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string DescribeAppsRequest::getOrder()const
+{
+	return order_;
+}
+
+void DescribeAppsRequest::setOrder(const std::string& order)
+{
+	order_ = order;
+	setParameter("Order", order);
+}
+
+std::string DescribeAppsRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeAppsRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeAppsRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeAppsRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string DescribeAppsRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeAppsRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeAppsRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeAppsRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeAppsRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeAppsRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool DescribeAppsRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeAppsRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeAppsRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeAppsRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool DescribeAppsRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeAppsRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeAppsRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeAppsRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeAppsRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeAppsRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DescribeAppsRequest::getStatus()const
+{
+	return status_;
+}
+
+void DescribeAppsRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+

+ 85 - 0
rtc/src/model/DescribeAppsResult.cc

@@ -0,0 +1,85 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/rtc/model/DescribeAppsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeAppsResult::DescribeAppsResult() :
+	ServiceResult()
+{}
+
+DescribeAppsResult::DescribeAppsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeAppsResult::~DescribeAppsResult()
+{}
+
+void DescribeAppsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allAppList = value["AppList"]["App"];
+	for (auto value : allAppList)
+	{
+		App appListObject;
+		if(!value["Status"].isNull())
+			appListObject.status = std::stoi(value["Status"].asString());
+		if(!value["AppId"].isNull())
+			appListObject.appId = value["AppId"].asString();
+		if(!value["AppName"].isNull())
+			appListObject.appName = value["AppName"].asString();
+		if(!value["CreateTime"].isNull())
+			appListObject.createTime = value["CreateTime"].asString();
+		if(!value["AppType"].isNull())
+			appListObject.appType = value["AppType"].asString();
+		if(!value["BillType"].isNull())
+			appListObject.billType = value["BillType"].asString();
+		auto allServiceAreas = value["ServiceAreas"]["ServiceArea"];
+		for (auto value : allServiceAreas)
+			appListObject.serviceAreas.push_back(value.asString());
+		appList_.push_back(appListObject);
+	}
+	if(!value["TotalNum"].isNull())
+		totalNum_ = std::stoi(value["TotalNum"].asString());
+	if(!value["TotalPage"].isNull())
+		totalPage_ = std::stoi(value["TotalPage"].asString());
+
+}
+
+int DescribeAppsResult::getTotalNum()const
+{
+	return totalNum_;
+}
+
+int DescribeAppsResult::getTotalPage()const
+{
+	return totalPage_;
+}
+
+std::vector<DescribeAppsResult::App> DescribeAppsResult::getAppList()const
+{
+	return appList_;
+}
+

+ 269 - 0
rtc/src/model/DescribeConferenceAuthInfoRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/DescribeConferenceAuthInfoRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeConferenceAuthInfoRequest;
+
+DescribeConferenceAuthInfoRequest::DescribeConferenceAuthInfoRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeConferenceAuthInfo")
+{}
+
+DescribeConferenceAuthInfoRequest::~DescribeConferenceAuthInfoRequest()
+{}
+
+std::string DescribeConferenceAuthInfoRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeConferenceAuthInfoRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeConferenceAuthInfoRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long DescribeConferenceAuthInfoRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeConferenceAuthInfoRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeConferenceAuthInfoRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeConferenceAuthInfoRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeConferenceAuthInfoRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeConferenceAuthInfoRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeConferenceAuthInfoRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeConferenceAuthInfoRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeConferenceAuthInfoRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool DescribeConferenceAuthInfoRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeConferenceAuthInfoRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeConferenceAuthInfoRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeConferenceAuthInfoRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string DescribeConferenceAuthInfoRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool DescribeConferenceAuthInfoRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeConferenceAuthInfoRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeConferenceAuthInfoRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeConferenceAuthInfoRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeConferenceAuthInfoRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeConferenceAuthInfoRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeConferenceAuthInfoRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeConferenceAuthInfoRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeConferenceAuthInfoRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 64 - 0
rtc/src/model/DescribeConferenceAuthInfoResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/DescribeConferenceAuthInfoResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeConferenceAuthInfoResult::DescribeConferenceAuthInfoResult() :
+	ServiceResult()
+{}
+
+DescribeConferenceAuthInfoResult::DescribeConferenceAuthInfoResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeConferenceAuthInfoResult::~DescribeConferenceAuthInfoResult()
+{}
+
+void DescribeConferenceAuthInfoResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto authInfoNode = value["AuthInfo"];
+	if(!authInfoNode["Key"].isNull())
+		authInfo_.key = authInfoNode["Key"].asString();
+	if(!authInfoNode["Nonce"].isNull())
+		authInfo_.nonce = authInfoNode["Nonce"].asString();
+	if(!authInfoNode["Timestamp"].isNull())
+		authInfo_.timestamp = std::stoi(authInfoNode["Timestamp"].asString());
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+DescribeConferenceAuthInfoResult::AuthInfo DescribeConferenceAuthInfoResult::getAuthInfo()const
+{
+	return authInfo_;
+}
+
+std::string DescribeConferenceAuthInfoResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+

+ 280 - 0
rtc/src/model/DescribeRealTimeRecordDetailRequest.cc

@@ -0,0 +1,280 @@
+/*
+ * 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/rtc/model/DescribeRealTimeRecordDetailRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeRealTimeRecordDetailRequest;
+
+DescribeRealTimeRecordDetailRequest::DescribeRealTimeRecordDetailRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeRealTimeRecordDetail")
+{}
+
+DescribeRealTimeRecordDetailRequest::~DescribeRealTimeRecordDetailRequest()
+{}
+
+std::string DescribeRealTimeRecordDetailRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long DescribeRealTimeRecordDetailRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeRealTimeRecordDetailRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeRealTimeRecordDetailRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool DescribeRealTimeRecordDetailRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeRealTimeRecordDetailRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool DescribeRealTimeRecordDetailRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getRecordId()const
+{
+	return recordId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setRecordId(const std::string& recordId)
+{
+	recordId_ = recordId;
+	setParameter("RecordId", recordId);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+std::string DescribeRealTimeRecordDetailRequest::getChannelId()const
+{
+	return channelId_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setChannelId(const std::string& channelId)
+{
+	channelId_ = channelId;
+	setParameter("ChannelId", channelId);
+}
+
+long DescribeRealTimeRecordDetailRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeRealTimeRecordDetailRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 64 - 0
rtc/src/model/DescribeRealTimeRecordDetailResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/DescribeRealTimeRecordDetailResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeRealTimeRecordDetailResult::DescribeRealTimeRecordDetailResult() :
+	ServiceResult()
+{}
+
+DescribeRealTimeRecordDetailResult::DescribeRealTimeRecordDetailResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeRealTimeRecordDetailResult::~DescribeRealTimeRecordDetailResult()
+{}
+
+void DescribeRealTimeRecordDetailResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allRecordDetailInfos = value["RecordDetailInfos"]["RecordDetailInfo"];
+	for (auto value : allRecordDetailInfos)
+	{
+		RecordDetailInfo recordDetailInfosObject;
+		if(!value["Uid"].isNull())
+			recordDetailInfosObject.uid = value["Uid"].asString();
+		if(!value["StartTime"].isNull())
+			recordDetailInfosObject.startTime = value["StartTime"].asString();
+		if(!value["DeviceType"].isNull())
+			recordDetailInfosObject.deviceType = value["DeviceType"].asString();
+		if(!value["SDKVersion"].isNull())
+			recordDetailInfosObject.sDKVersion = value["SDKVersion"].asString();
+		recordDetailInfos_.push_back(recordDetailInfosObject);
+	}
+
+}
+
+std::vector<DescribeRealTimeRecordDetailResult::RecordDetailInfo> DescribeRealTimeRecordDetailResult::getRecordDetailInfos()const
+{
+	return recordDetailInfos_;
+}
+

+ 269 - 0
rtc/src/model/DescribeRealTimeRecordListRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/DescribeRealTimeRecordListRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeRealTimeRecordListRequest;
+
+DescribeRealTimeRecordListRequest::DescribeRealTimeRecordListRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeRealTimeRecordList")
+{}
+
+DescribeRealTimeRecordListRequest::~DescribeRealTimeRecordListRequest()
+{}
+
+std::string DescribeRealTimeRecordListRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeRealTimeRecordListRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeRealTimeRecordListRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeRealTimeRecordListRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long DescribeRealTimeRecordListRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeRealTimeRecordListRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeRealTimeRecordListRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeRealTimeRecordListRequest::getEndTime()const
+{
+	return endTime_;
+}
+
+void DescribeRealTimeRecordListRequest::setEndTime(const std::string& endTime)
+{
+	endTime_ = endTime;
+	setParameter("EndTime", endTime);
+}
+
+std::string DescribeRealTimeRecordListRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+std::string DescribeRealTimeRecordListRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void DescribeRealTimeRecordListRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+long DescribeRealTimeRecordListRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeRealTimeRecordListRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeRealTimeRecordListRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeRealTimeRecordListRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeRealTimeRecordListRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeRealTimeRecordListRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string DescribeRealTimeRecordListRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeRealTimeRecordListRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeRealTimeRecordListRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool DescribeRealTimeRecordListRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeRealTimeRecordListRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeRealTimeRecordListRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeRealTimeRecordListRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string DescribeRealTimeRecordListRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeRealTimeRecordListRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool DescribeRealTimeRecordListRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeRealTimeRecordListRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeRealTimeRecordListRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeRealTimeRecordListRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeRealTimeRecordListRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeRealTimeRecordListRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeRealTimeRecordListRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeRealTimeRecordListRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeRealTimeRecordListRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeRealTimeRecordListRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeRealTimeRecordListRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeRealTimeRecordListRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 71 - 0
rtc/src/model/DescribeRealTimeRecordListResult.cc

@@ -0,0 +1,71 @@
+/*
+ * 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/rtc/model/DescribeRealTimeRecordListResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeRealTimeRecordListResult::DescribeRealTimeRecordListResult() :
+	ServiceResult()
+{}
+
+DescribeRealTimeRecordListResult::DescribeRealTimeRecordListResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeRealTimeRecordListResult::~DescribeRealTimeRecordListResult()
+{}
+
+void DescribeRealTimeRecordListResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allCommunicationRecordInfos = value["CommunicationRecordInfos"]["CommunicationRecordInfo"];
+	for (auto value : allCommunicationRecordInfos)
+	{
+		CommunicationRecordInfo communicationRecordInfosObject;
+		if(!value["ChannelId"].isNull())
+			communicationRecordInfosObject.channelId = value["ChannelId"].asString();
+		if(!value["StartTime"].isNull())
+			communicationRecordInfosObject.startTime = value["StartTime"].asString();
+		if(!value["EndTime"].isNull())
+			communicationRecordInfosObject.endTime = value["EndTime"].asString();
+		if(!value["OnlineUserCnt"].isNull())
+			communicationRecordInfosObject.onlineUserCnt = std::stol(value["OnlineUserCnt"].asString());
+		if(!value["Status"].isNull())
+			communicationRecordInfosObject.status = value["Status"].asString() == "true";
+		if(!value["RecordId"].isNull())
+			communicationRecordInfosObject.recordId = value["RecordId"].asString();
+		auto allCallAreas = value["CallAreas"]["CallArea"];
+		for (auto value : allCallAreas)
+			communicationRecordInfosObject.callAreas.push_back(value.asString());
+		communicationRecordInfos_.push_back(communicationRecordInfosObject);
+	}
+
+}
+
+std::vector<DescribeRealTimeRecordListResult::CommunicationRecordInfo> DescribeRealTimeRecordListResult::getCommunicationRecordInfos()const
+{
+	return communicationRecordInfos_;
+}
+

+ 302 - 0
rtc/src/model/DescribeRecordDetailRequest.cc

@@ -0,0 +1,302 @@
+/*
+ * 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/rtc/model/DescribeRecordDetailRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeRecordDetailRequest;
+
+DescribeRecordDetailRequest::DescribeRecordDetailRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeRecordDetail")
+{}
+
+DescribeRecordDetailRequest::~DescribeRecordDetailRequest()
+{}
+
+long DescribeRecordDetailRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeRecordDetailRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeRecordDetailRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeRecordDetailRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeRecordDetailRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void DescribeRecordDetailRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string DescribeRecordDetailRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeRecordDetailRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeRecordDetailRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeRecordDetailRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeRecordDetailRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeRecordDetailRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string DescribeRecordDetailRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeRecordDetailRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string DescribeRecordDetailRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeRecordDetailRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeRecordDetailRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeRecordDetailRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeRecordDetailRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeRecordDetailRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeRecordDetailRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeRecordDetailRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeRecordDetailRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeRecordDetailRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string DescribeRecordDetailRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeRecordDetailRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeRecordDetailRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeRecordDetailRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string DescribeRecordDetailRequest::getEndTime()const
+{
+	return endTime_;
+}
+
+void DescribeRecordDetailRequest::setEndTime(const std::string& endTime)
+{
+	endTime_ = endTime;
+	setParameter("EndTime", endTime);
+}
+
+std::string DescribeRecordDetailRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeRecordDetailRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeRecordDetailRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeRecordDetailRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeRecordDetailRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeRecordDetailRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool DescribeRecordDetailRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeRecordDetailRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeRecordDetailRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeRecordDetailRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool DescribeRecordDetailRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeRecordDetailRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeRecordDetailRequest::getRecordId()const
+{
+	return recordId_;
+}
+
+void DescribeRecordDetailRequest::setRecordId(const std::string& recordId)
+{
+	recordId_ = recordId;
+	setParameter("RecordId", recordId);
+}
+
+std::string DescribeRecordDetailRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeRecordDetailRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeRecordDetailRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeRecordDetailRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DescribeRecordDetailRequest::getChannelId()const
+{
+	return channelId_;
+}
+
+void DescribeRecordDetailRequest::setChannelId(const std::string& channelId)
+{
+	channelId_ = channelId;
+	setParameter("ChannelId", channelId);
+}
+

+ 82 - 0
rtc/src/model/DescribeRecordDetailResult.cc

@@ -0,0 +1,82 @@
+/*
+ * 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/rtc/model/DescribeRecordDetailResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeRecordDetailResult::DescribeRecordDetailResult() :
+	ServiceResult()
+{}
+
+DescribeRecordDetailResult::DescribeRecordDetailResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeRecordDetailResult::~DescribeRecordDetailResult()
+{}
+
+void DescribeRecordDetailResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allRecordDetailInfos = value["RecordDetailInfos"]["RecordDetailInfo"];
+	for (auto value : allRecordDetailInfos)
+	{
+		RecordDetailInfo recordDetailInfosObject;
+		if(!value["Uid"].isNull())
+			recordDetailInfosObject.uid = value["Uid"].asString();
+		if(!value["StartTime"].isNull())
+			recordDetailInfosObject.startTime = value["StartTime"].asString();
+		if(!value["EndTime"].isNull())
+			recordDetailInfosObject.endTime = value["EndTime"].asString();
+		if(!value["DeviceType"].isNull())
+			recordDetailInfosObject.deviceType = value["DeviceType"].asString();
+		if(!value["SDKVersion"].isNull())
+			recordDetailInfosObject.sDKVersion = value["SDKVersion"].asString();
+		recordDetailInfos_.push_back(recordDetailInfosObject);
+	}
+	auto durationNode = value["Duration"];
+	if(!durationNode["Audio"].isNull())
+		duration_.audio = std::stof(durationNode["Audio"].asString());
+	if(!durationNode["Sd"].isNull())
+		duration_.sd = std::stof(durationNode["Sd"].asString());
+	if(!durationNode["Hd"].isNull())
+		duration_.hd = std::stof(durationNode["Hd"].asString());
+	if(!durationNode["Fhd"].isNull())
+		duration_.fhd = std::stof(durationNode["Fhd"].asString());
+	if(!durationNode["All"].isNull())
+		duration_.all = std::stof(durationNode["All"].asString());
+
+}
+
+std::vector<DescribeRecordDetailResult::RecordDetailInfo> DescribeRecordDetailResult::getRecordDetailInfos()const
+{
+	return recordDetailInfos_;
+}
+
+DescribeRecordDetailResult::Duration DescribeRecordDetailResult::getDuration()const
+{
+	return duration_;
+}
+

+ 346 - 0
rtc/src/model/DescribeRecordListRequest.cc

@@ -0,0 +1,346 @@
+/*
+ * 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/rtc/model/DescribeRecordListRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeRecordListRequest;
+
+DescribeRecordListRequest::DescribeRecordListRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeRecordList")
+{}
+
+DescribeRecordListRequest::~DescribeRecordListRequest()
+{}
+
+std::string DescribeRecordListRequest::getSortType()const
+{
+	return sortType_;
+}
+
+void DescribeRecordListRequest::setSortType(const std::string& sortType)
+{
+	sortType_ = sortType;
+	setParameter("SortType", sortType);
+}
+
+long DescribeRecordListRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeRecordListRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeRecordListRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeRecordListRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeRecordListRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void DescribeRecordListRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string DescribeRecordListRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeRecordListRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeRecordListRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeRecordListRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeRecordListRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeRecordListRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string DescribeRecordListRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeRecordListRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string DescribeRecordListRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeRecordListRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeRecordListRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeRecordListRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeRecordListRequest::getServiceArea()const
+{
+	return serviceArea_;
+}
+
+void DescribeRecordListRequest::setServiceArea(const std::string& serviceArea)
+{
+	serviceArea_ = serviceArea;
+	setParameter("ServiceArea", serviceArea);
+}
+
+long DescribeRecordListRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void DescribeRecordListRequest::setPageSize(long pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+std::string DescribeRecordListRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeRecordListRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeRecordListRequest::getId()const
+{
+	return id_;
+}
+
+void DescribeRecordListRequest::setId(const std::string& id)
+{
+	id_ = id;
+	setParameter("Id", id);
+}
+
+std::string DescribeRecordListRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeRecordListRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeRecordListRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeRecordListRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string DescribeRecordListRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeRecordListRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeRecordListRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeRecordListRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string DescribeRecordListRequest::getEndTime()const
+{
+	return endTime_;
+}
+
+void DescribeRecordListRequest::setEndTime(const std::string& endTime)
+{
+	endTime_ = endTime;
+	setParameter("EndTime", endTime);
+}
+
+std::string DescribeRecordListRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeRecordListRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeRecordListRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeRecordListRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeRecordListRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeRecordListRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool DescribeRecordListRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeRecordListRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeRecordListRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeRecordListRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool DescribeRecordListRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeRecordListRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeRecordListRequest::getIdType()const
+{
+	return idType_;
+}
+
+void DescribeRecordListRequest::setIdType(const std::string& idType)
+{
+	idType_ = idType;
+	setParameter("IdType", idType);
+}
+
+std::string DescribeRecordListRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeRecordListRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+long DescribeRecordListRequest::getPageNo()const
+{
+	return pageNo_;
+}
+
+void DescribeRecordListRequest::setPageNo(long pageNo)
+{
+	pageNo_ = pageNo;
+	setParameter("PageNo", std::to_string(pageNo));
+}
+
+std::string DescribeRecordListRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeRecordListRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+

+ 92 - 0
rtc/src/model/DescribeRecordListResult.cc

@@ -0,0 +1,92 @@
+/*
+ * 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/rtc/model/DescribeRecordListResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeRecordListResult::DescribeRecordListResult() :
+	ServiceResult()
+{}
+
+DescribeRecordListResult::DescribeRecordListResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeRecordListResult::~DescribeRecordListResult()
+{}
+
+void DescribeRecordListResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allCommunicationRecordInfos = value["CommunicationRecordInfos"]["CommunicationRecordInfo"];
+	for (auto value : allCommunicationRecordInfos)
+	{
+		CommunicationRecordInfo communicationRecordInfosObject;
+		if(!value["ChannelId"].isNull())
+			communicationRecordInfosObject.channelId = value["ChannelId"].asString();
+		if(!value["StartTime"].isNull())
+			communicationRecordInfosObject.startTime = value["StartTime"].asString();
+		if(!value["EndTime"].isNull())
+			communicationRecordInfosObject.endTime = value["EndTime"].asString();
+		if(!value["TotalUserCnt"].isNull())
+			communicationRecordInfosObject.totalUserCnt = std::stol(value["TotalUserCnt"].asString());
+		if(!value["Status"].isNull())
+			communicationRecordInfosObject.status = value["Status"].asString() == "true";
+		if(!value["RecordId"].isNull())
+			communicationRecordInfosObject.recordId = value["RecordId"].asString();
+		auto allCallAreas = value["CallAreas"]["CallArea"];
+		for (auto value : allCallAreas)
+			communicationRecordInfosObject.callAreas.push_back(value.asString());
+		communicationRecordInfos_.push_back(communicationRecordInfosObject);
+	}
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stol(value["PageSize"].asString());
+	if(!value["PageNo"].isNull())
+		pageNo_ = std::stol(value["PageNo"].asString());
+	if(!value["TotalCnt"].isNull())
+		totalCnt_ = std::stol(value["TotalCnt"].asString());
+
+}
+
+long DescribeRecordListResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+long DescribeRecordListResult::getTotalCnt()const
+{
+	return totalCnt_;
+}
+
+long DescribeRecordListResult::getPageNo()const
+{
+	return pageNo_;
+}
+
+std::vector<DescribeRecordListResult::CommunicationRecordInfo> DescribeRecordListResult::getCommunicationRecordInfos()const
+{
+	return communicationRecordInfos_;
+}
+

+ 324 - 0
rtc/src/model/DescribeStatisRequest.cc

@@ -0,0 +1,324 @@
+/*
+ * 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/rtc/model/DescribeStatisRequest.h>
+
+using AlibabaCloud::Rtc::Model::DescribeStatisRequest;
+
+DescribeStatisRequest::DescribeStatisRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "DescribeStatis")
+{}
+
+DescribeStatisRequest::~DescribeStatisRequest()
+{}
+
+std::string DescribeStatisRequest::getSortType()const
+{
+	return sortType_;
+}
+
+void DescribeStatisRequest::setSortType(const std::string& sortType)
+{
+	sortType_ = sortType;
+	setParameter("SortType", sortType);
+}
+
+long DescribeStatisRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeStatisRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeStatisRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeStatisRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeStatisRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void DescribeStatisRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string DescribeStatisRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeStatisRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeStatisRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeStatisRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeStatisRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeStatisRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string DescribeStatisRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeStatisRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string DescribeStatisRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeStatisRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeStatisRequest::getDataType()const
+{
+	return dataType_;
+}
+
+void DescribeStatisRequest::setDataType(const std::string& dataType)
+{
+	dataType_ = dataType;
+	setParameter("DataType", dataType);
+}
+
+std::string DescribeStatisRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeStatisRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeStatisRequest::getServiceArea()const
+{
+	return serviceArea_;
+}
+
+void DescribeStatisRequest::setServiceArea(const std::string& serviceArea)
+{
+	serviceArea_ = serviceArea;
+	setParameter("ServiceArea", serviceArea);
+}
+
+std::string DescribeStatisRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeStatisRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeStatisRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeStatisRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeStatisRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeStatisRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string DescribeStatisRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeStatisRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeStatisRequest::getProduct()const
+{
+	return product_;
+}
+
+void DescribeStatisRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string DescribeStatisRequest::getEndTime()const
+{
+	return endTime_;
+}
+
+void DescribeStatisRequest::setEndTime(const std::string& endTime)
+{
+	endTime_ = endTime;
+	setParameter("EndTime", endTime);
+}
+
+std::string DescribeStatisRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeStatisRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeStatisRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeStatisRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeStatisRequest::getVersion()const
+{
+	return version_;
+}
+
+void DescribeStatisRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool DescribeStatisRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeStatisRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeStatisRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeStatisRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool DescribeStatisRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeStatisRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string DescribeStatisRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeStatisRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string DescribeStatisRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeStatisRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string DescribeStatisRequest::getInterval()const
+{
+	return interval_;
+}
+
+void DescribeStatisRequest::setInterval(const std::string& interval)
+{
+	interval_ = interval;
+	setParameter("Interval", interval);
+}
+

+ 98 - 0
rtc/src/model/DescribeStatisResult.cc

@@ -0,0 +1,98 @@
+/*
+ * 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/rtc/model/DescribeStatisResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+DescribeStatisResult::DescribeStatisResult() :
+	ServiceResult()
+{}
+
+DescribeStatisResult::DescribeStatisResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeStatisResult::~DescribeStatisResult()
+{}
+
+void DescribeStatisResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allStatisInfos = value["StatisInfos"]["StatisInfo"];
+	for (auto value : allStatisInfos)
+	{
+		StatisInfo statisInfosObject;
+		if(!value["Time"].isNull())
+			statisInfosObject.time = value["Time"].asString();
+		auto allDuration = value["Duration"]["DurationItem"];
+		for (auto value : allDuration)
+		{
+			StatisInfo::DurationItem durationObject;
+			if(!value["TotalDuration"].isNull())
+				durationObject.totalDuration = std::stof(value["TotalDuration"].asString());
+			if(!value["AudioDuration"].isNull())
+				durationObject.audioDuration = std::stof(value["AudioDuration"].asString());
+			if(!value["SdDuration"].isNull())
+				durationObject.sdDuration = std::stof(value["SdDuration"].asString());
+			if(!value["HdDuration"].isNull())
+				durationObject.hdDuration = std::stof(value["HdDuration"].asString());
+			if(!value["FhdDuration"].isNull())
+				durationObject.fhdDuration = std::stof(value["FhdDuration"].asString());
+			statisInfosObject.duration.push_back(durationObject);
+		}
+		auto allUserStatis = value["UserStatis"]["UserStatisItem"];
+		for (auto value : allUserStatis)
+		{
+			StatisInfo::UserStatisItem userStatisObject;
+			if(!value["ActiveUserCnt"].isNull())
+				userStatisObject.activeUserCnt = std::stol(value["ActiveUserCnt"].asString());
+			if(!value["ConSessionPeak"].isNull())
+				userStatisObject.conSessionPeak = std::stol(value["ConSessionPeak"].asString());
+			if(!value["ConSessionPeakTime"].isNull())
+				userStatisObject.conSessionPeakTime = value["ConSessionPeakTime"].asString();
+			statisInfosObject.userStatis.push_back(userStatisObject);
+		}
+		auto allChannelStatis = value["ChannelStatis"]["ChannelStatisItem"];
+		for (auto value : allChannelStatis)
+		{
+			StatisInfo::ChannelStatisItem channelStatisObject;
+			if(!value["AccChannelCnt"].isNull())
+				channelStatisObject.accChannelCnt = std::stol(value["AccChannelCnt"].asString());
+			if(!value["ConChannelPeak"].isNull())
+				channelStatisObject.conChannelPeak = std::stol(value["ConChannelPeak"].asString());
+			if(!value["ConChannelPeakTime"].isNull())
+				channelStatisObject.conChannelPeakTime = value["ConChannelPeakTime"].asString();
+			statisInfosObject.channelStatis.push_back(channelStatisObject);
+		}
+		statisInfos_.push_back(statisInfosObject);
+	}
+
+}
+
+std::vector<DescribeStatisResult::StatisInfo> DescribeStatisResult::getStatisInfos()const
+{
+	return statisInfos_;
+}
+

+ 269 - 0
rtc/src/model/ModifyAppRequest.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/rtc/model/ModifyAppRequest.h>
+
+using AlibabaCloud::Rtc::Model::ModifyAppRequest;
+
+ModifyAppRequest::ModifyAppRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "ModifyApp")
+{}
+
+ModifyAppRequest::~ModifyAppRequest()
+{}
+
+std::string ModifyAppRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void ModifyAppRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string ModifyAppRequest::getProduct()const
+{
+	return product_;
+}
+
+void ModifyAppRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long ModifyAppRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void ModifyAppRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool ModifyAppRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void ModifyAppRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string ModifyAppRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void ModifyAppRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long ModifyAppRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void ModifyAppRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string ModifyAppRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void ModifyAppRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string ModifyAppRequest::getVersion()const
+{
+	return version_;
+}
+
+void ModifyAppRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string ModifyAppRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void ModifyAppRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string ModifyAppRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void ModifyAppRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool ModifyAppRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void ModifyAppRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool ModifyAppRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void ModifyAppRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string ModifyAppRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void ModifyAppRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool ModifyAppRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void ModifyAppRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string ModifyAppRequest::getAppName()const
+{
+	return appName_;
+}
+
+void ModifyAppRequest::setAppName(const std::string& appName)
+{
+	appName_ = appName;
+	setParameter("AppName", appName);
+}
+
+std::string ModifyAppRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void ModifyAppRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string ModifyAppRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void ModifyAppRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string ModifyAppRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void ModifyAppRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string ModifyAppRequest::getAppId()const
+{
+	return appId_;
+}
+
+void ModifyAppRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string ModifyAppRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void ModifyAppRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string ModifyAppRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void ModifyAppRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long ModifyAppRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void ModifyAppRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 45 - 0
rtc/src/model/ModifyAppResult.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/rtc/model/ModifyAppResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+ModifyAppResult::ModifyAppResult() :
+	ServiceResult()
+{}
+
+ModifyAppResult::ModifyAppResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ModifyAppResult::~ModifyAppResult()
+{}
+
+void ModifyAppResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 313 - 0
rtc/src/model/ModifyConferenceRequest.cc

@@ -0,0 +1,313 @@
+/*
+ * 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/rtc/model/ModifyConferenceRequest.h>
+
+using AlibabaCloud::Rtc::Model::ModifyConferenceRequest;
+
+ModifyConferenceRequest::ModifyConferenceRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "ModifyConference")
+{}
+
+ModifyConferenceRequest::~ModifyConferenceRequest()
+{}
+
+long ModifyConferenceRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void ModifyConferenceRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool ModifyConferenceRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void ModifyConferenceRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string ModifyConferenceRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void ModifyConferenceRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string ModifyConferenceRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void ModifyConferenceRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string ModifyConferenceRequest::getType()const
+{
+	return type_;
+}
+
+void ModifyConferenceRequest::setType(const std::string& type)
+{
+	type_ = type;
+	setParameter("Type", type);
+}
+
+std::string ModifyConferenceRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void ModifyConferenceRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string ModifyConferenceRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void ModifyConferenceRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string ModifyConferenceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void ModifyConferenceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string ModifyConferenceRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void ModifyConferenceRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string ModifyConferenceRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void ModifyConferenceRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string ModifyConferenceRequest::getConferenceName()const
+{
+	return conferenceName_;
+}
+
+void ModifyConferenceRequest::setConferenceName(const std::string& conferenceName)
+{
+	conferenceName_ = conferenceName;
+	setParameter("ConferenceName", conferenceName);
+}
+
+std::string ModifyConferenceRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void ModifyConferenceRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string ModifyConferenceRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void ModifyConferenceRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string ModifyConferenceRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void ModifyConferenceRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long ModifyConferenceRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void ModifyConferenceRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string ModifyConferenceRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void ModifyConferenceRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string ModifyConferenceRequest::getProduct()const
+{
+	return product_;
+}
+
+void ModifyConferenceRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::string ModifyConferenceRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void ModifyConferenceRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long ModifyConferenceRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void ModifyConferenceRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string ModifyConferenceRequest::getVersion()const
+{
+	return version_;
+}
+
+void ModifyConferenceRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+bool ModifyConferenceRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void ModifyConferenceRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool ModifyConferenceRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void ModifyConferenceRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool ModifyConferenceRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void ModifyConferenceRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string ModifyConferenceRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void ModifyConferenceRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string ModifyConferenceRequest::getAppId()const
+{
+	return appId_;
+}
+
+void ModifyConferenceRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+int ModifyConferenceRequest::getRemindNotice()const
+{
+	return remindNotice_;
+}
+
+void ModifyConferenceRequest::setRemindNotice(int remindNotice)
+{
+	remindNotice_ = remindNotice;
+	setParameter("RemindNotice", std::to_string(remindNotice));
+}
+

+ 52 - 0
rtc/src/model/ModifyConferenceResult.cc

@@ -0,0 +1,52 @@
+/*
+ * 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/rtc/model/ModifyConferenceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+ModifyConferenceResult::ModifyConferenceResult() :
+	ServiceResult()
+{}
+
+ModifyConferenceResult::ModifyConferenceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ModifyConferenceResult::~ModifyConferenceResult()
+{}
+
+void ModifyConferenceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string ModifyConferenceResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+

+ 280 - 0
rtc/src/model/MuteAudioAllRequest.cc

@@ -0,0 +1,280 @@
+/*
+ * 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/rtc/model/MuteAudioAllRequest.h>
+
+using AlibabaCloud::Rtc::Model::MuteAudioAllRequest;
+
+MuteAudioAllRequest::MuteAudioAllRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "MuteAudioAll")
+{}
+
+MuteAudioAllRequest::~MuteAudioAllRequest()
+{}
+
+std::string MuteAudioAllRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void MuteAudioAllRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string MuteAudioAllRequest::getProduct()const
+{
+	return product_;
+}
+
+void MuteAudioAllRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long MuteAudioAllRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void MuteAudioAllRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool MuteAudioAllRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void MuteAudioAllRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string MuteAudioAllRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void MuteAudioAllRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long MuteAudioAllRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void MuteAudioAllRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string MuteAudioAllRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void MuteAudioAllRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string MuteAudioAllRequest::getVersion()const
+{
+	return version_;
+}
+
+void MuteAudioAllRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string MuteAudioAllRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void MuteAudioAllRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string MuteAudioAllRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void MuteAudioAllRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool MuteAudioAllRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void MuteAudioAllRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool MuteAudioAllRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void MuteAudioAllRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string MuteAudioAllRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void MuteAudioAllRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool MuteAudioAllRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void MuteAudioAllRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string MuteAudioAllRequest::getParticipantId()const
+{
+	return participantId_;
+}
+
+void MuteAudioAllRequest::setParticipantId(const std::string& participantId)
+{
+	participantId_ = participantId;
+	setParameter("ParticipantId", participantId);
+}
+
+std::string MuteAudioAllRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void MuteAudioAllRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string MuteAudioAllRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void MuteAudioAllRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string MuteAudioAllRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void MuteAudioAllRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string MuteAudioAllRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void MuteAudioAllRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string MuteAudioAllRequest::getAppId()const
+{
+	return appId_;
+}
+
+void MuteAudioAllRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string MuteAudioAllRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void MuteAudioAllRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string MuteAudioAllRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void MuteAudioAllRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long MuteAudioAllRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void MuteAudioAllRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 69 - 0
rtc/src/model/MuteAudioAllResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/MuteAudioAllResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+MuteAudioAllResult::MuteAudioAllResult() :
+	ServiceResult()
+{}
+
+MuteAudioAllResult::MuteAudioAllResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+MuteAudioAllResult::~MuteAudioAllResult()
+{}
+
+void MuteAudioAllResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allParticipants = value["Participants"]["Participant"];
+	for (auto value : allParticipants)
+	{
+		Participant participantsObject;
+		if(!value["Id"].isNull())
+			participantsObject.id = value["Id"].asString();
+		if(!value["Code"].isNull())
+			participantsObject.code = value["Code"].asString();
+		if(!value["Message"].isNull())
+			participantsObject.message = value["Message"].asString();
+		participants_.push_back(participantsObject);
+	}
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string MuteAudioAllResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+std::vector<MuteAudioAllResult::Participant> MuteAudioAllResult::getParticipants()const
+{
+	return participants_;
+}
+

+ 281 - 0
rtc/src/model/MuteAudioRequest.cc

@@ -0,0 +1,281 @@
+/*
+ * 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/rtc/model/MuteAudioRequest.h>
+
+using AlibabaCloud::Rtc::Model::MuteAudioRequest;
+
+MuteAudioRequest::MuteAudioRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "MuteAudio")
+{}
+
+MuteAudioRequest::~MuteAudioRequest()
+{}
+
+std::string MuteAudioRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void MuteAudioRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string MuteAudioRequest::getProduct()const
+{
+	return product_;
+}
+
+void MuteAudioRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::vector<std::string> MuteAudioRequest::getParticipantIds()const
+{
+	return participantIds_;
+}
+
+void MuteAudioRequest::setParticipantIds(const std::vector<std::string>& participantIds)
+{
+	participantIds_ = participantIds;
+	for(int i = 0; i!= participantIds.size(); i++)
+		setParameter("ParticipantIds."+ std::to_string(i), participantIds.at(i));
+}
+
+long MuteAudioRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void MuteAudioRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool MuteAudioRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void MuteAudioRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string MuteAudioRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void MuteAudioRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long MuteAudioRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void MuteAudioRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string MuteAudioRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void MuteAudioRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string MuteAudioRequest::getVersion()const
+{
+	return version_;
+}
+
+void MuteAudioRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string MuteAudioRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void MuteAudioRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string MuteAudioRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void MuteAudioRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool MuteAudioRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void MuteAudioRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool MuteAudioRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void MuteAudioRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string MuteAudioRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void MuteAudioRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool MuteAudioRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void MuteAudioRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string MuteAudioRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void MuteAudioRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string MuteAudioRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void MuteAudioRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string MuteAudioRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void MuteAudioRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string MuteAudioRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void MuteAudioRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string MuteAudioRequest::getAppId()const
+{
+	return appId_;
+}
+
+void MuteAudioRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string MuteAudioRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void MuteAudioRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string MuteAudioRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void MuteAudioRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long MuteAudioRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void MuteAudioRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 69 - 0
rtc/src/model/MuteAudioResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/MuteAudioResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+MuteAudioResult::MuteAudioResult() :
+	ServiceResult()
+{}
+
+MuteAudioResult::MuteAudioResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+MuteAudioResult::~MuteAudioResult()
+{}
+
+void MuteAudioResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allParticipants = value["Participants"]["Participant"];
+	for (auto value : allParticipants)
+	{
+		Participant participantsObject;
+		if(!value["Id"].isNull())
+			participantsObject.id = value["Id"].asString();
+		if(!value["Code"].isNull())
+			participantsObject.code = value["Code"].asString();
+		if(!value["Message"].isNull())
+			participantsObject.message = value["Message"].asString();
+		participants_.push_back(participantsObject);
+	}
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string MuteAudioResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+std::vector<MuteAudioResult::Participant> MuteAudioResult::getParticipants()const
+{
+	return participants_;
+}
+

+ 281 - 0
rtc/src/model/RemoveParticipantsRequest.cc

@@ -0,0 +1,281 @@
+/*
+ * 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/rtc/model/RemoveParticipantsRequest.h>
+
+using AlibabaCloud::Rtc::Model::RemoveParticipantsRequest;
+
+RemoveParticipantsRequest::RemoveParticipantsRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "RemoveParticipants")
+{}
+
+RemoveParticipantsRequest::~RemoveParticipantsRequest()
+{}
+
+std::string RemoveParticipantsRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void RemoveParticipantsRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string RemoveParticipantsRequest::getProduct()const
+{
+	return product_;
+}
+
+void RemoveParticipantsRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::vector<std::string> RemoveParticipantsRequest::getParticipantIds()const
+{
+	return participantIds_;
+}
+
+void RemoveParticipantsRequest::setParticipantIds(const std::vector<std::string>& participantIds)
+{
+	participantIds_ = participantIds;
+	for(int i = 0; i!= participantIds.size(); i++)
+		setParameter("ParticipantIds."+ std::to_string(i), participantIds.at(i));
+}
+
+long RemoveParticipantsRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void RemoveParticipantsRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool RemoveParticipantsRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void RemoveParticipantsRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string RemoveParticipantsRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void RemoveParticipantsRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long RemoveParticipantsRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void RemoveParticipantsRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string RemoveParticipantsRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void RemoveParticipantsRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string RemoveParticipantsRequest::getVersion()const
+{
+	return version_;
+}
+
+void RemoveParticipantsRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string RemoveParticipantsRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void RemoveParticipantsRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string RemoveParticipantsRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void RemoveParticipantsRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool RemoveParticipantsRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void RemoveParticipantsRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool RemoveParticipantsRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void RemoveParticipantsRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string RemoveParticipantsRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void RemoveParticipantsRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool RemoveParticipantsRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void RemoveParticipantsRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string RemoveParticipantsRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void RemoveParticipantsRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string RemoveParticipantsRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void RemoveParticipantsRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string RemoveParticipantsRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void RemoveParticipantsRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string RemoveParticipantsRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void RemoveParticipantsRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string RemoveParticipantsRequest::getAppId()const
+{
+	return appId_;
+}
+
+void RemoveParticipantsRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string RemoveParticipantsRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void RemoveParticipantsRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string RemoveParticipantsRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void RemoveParticipantsRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long RemoveParticipantsRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void RemoveParticipantsRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 69 - 0
rtc/src/model/RemoveParticipantsResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/RemoveParticipantsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+RemoveParticipantsResult::RemoveParticipantsResult() :
+	ServiceResult()
+{}
+
+RemoveParticipantsResult::RemoveParticipantsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+RemoveParticipantsResult::~RemoveParticipantsResult()
+{}
+
+void RemoveParticipantsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allParticipants = value["Participants"]["Participant"];
+	for (auto value : allParticipants)
+	{
+		Participant participantsObject;
+		if(!value["Id"].isNull())
+			participantsObject.id = value["Id"].asString();
+		if(!value["Code"].isNull())
+			participantsObject.code = value["Code"].asString();
+		if(!value["Message"].isNull())
+			participantsObject.message = value["Message"].asString();
+		participants_.push_back(participantsObject);
+	}
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string RemoveParticipantsResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+std::vector<RemoveParticipantsResult::Participant> RemoveParticipantsResult::getParticipants()const
+{
+	return participants_;
+}
+

+ 258 - 0
rtc/src/model/StartAppRequest.cc

@@ -0,0 +1,258 @@
+/*
+ * 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/rtc/model/StartAppRequest.h>
+
+using AlibabaCloud::Rtc::Model::StartAppRequest;
+
+StartAppRequest::StartAppRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "StartApp")
+{}
+
+StartAppRequest::~StartAppRequest()
+{}
+
+std::string StartAppRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void StartAppRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string StartAppRequest::getProduct()const
+{
+	return product_;
+}
+
+void StartAppRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long StartAppRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void StartAppRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool StartAppRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void StartAppRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string StartAppRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void StartAppRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long StartAppRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void StartAppRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string StartAppRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void StartAppRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string StartAppRequest::getVersion()const
+{
+	return version_;
+}
+
+void StartAppRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string StartAppRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void StartAppRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string StartAppRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void StartAppRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool StartAppRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void StartAppRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool StartAppRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void StartAppRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string StartAppRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void StartAppRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool StartAppRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void StartAppRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string StartAppRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void StartAppRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string StartAppRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void StartAppRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string StartAppRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void StartAppRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string StartAppRequest::getAppId()const
+{
+	return appId_;
+}
+
+void StartAppRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string StartAppRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void StartAppRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string StartAppRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void StartAppRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long StartAppRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void StartAppRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 45 - 0
rtc/src/model/StartAppResult.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/rtc/model/StartAppResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+StartAppResult::StartAppResult() :
+	ServiceResult()
+{}
+
+StartAppResult::StartAppResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+StartAppResult::~StartAppResult()
+{}
+
+void StartAppResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 258 - 0
rtc/src/model/StopAppRequest.cc

@@ -0,0 +1,258 @@
+/*
+ * 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/rtc/model/StopAppRequest.h>
+
+using AlibabaCloud::Rtc::Model::StopAppRequest;
+
+StopAppRequest::StopAppRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "StopApp")
+{}
+
+StopAppRequest::~StopAppRequest()
+{}
+
+std::string StopAppRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void StopAppRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string StopAppRequest::getProduct()const
+{
+	return product_;
+}
+
+void StopAppRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long StopAppRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void StopAppRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool StopAppRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void StopAppRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string StopAppRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void StopAppRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long StopAppRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void StopAppRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string StopAppRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void StopAppRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string StopAppRequest::getVersion()const
+{
+	return version_;
+}
+
+void StopAppRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string StopAppRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void StopAppRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string StopAppRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void StopAppRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool StopAppRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void StopAppRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool StopAppRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void StopAppRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string StopAppRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void StopAppRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool StopAppRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void StopAppRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string StopAppRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void StopAppRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string StopAppRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void StopAppRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string StopAppRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void StopAppRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string StopAppRequest::getAppId()const
+{
+	return appId_;
+}
+
+void StopAppRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string StopAppRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void StopAppRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string StopAppRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void StopAppRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long StopAppRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void StopAppRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 45 - 0
rtc/src/model/StopAppResult.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/rtc/model/StopAppResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+StopAppResult::StopAppResult() :
+	ServiceResult()
+{}
+
+StopAppResult::StopAppResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+StopAppResult::~StopAppResult()
+{}
+
+void StopAppResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 280 - 0
rtc/src/model/UnmuteAudioAllRequest.cc

@@ -0,0 +1,280 @@
+/*
+ * 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/rtc/model/UnmuteAudioAllRequest.h>
+
+using AlibabaCloud::Rtc::Model::UnmuteAudioAllRequest;
+
+UnmuteAudioAllRequest::UnmuteAudioAllRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "UnmuteAudioAll")
+{}
+
+UnmuteAudioAllRequest::~UnmuteAudioAllRequest()
+{}
+
+std::string UnmuteAudioAllRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void UnmuteAudioAllRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string UnmuteAudioAllRequest::getProduct()const
+{
+	return product_;
+}
+
+void UnmuteAudioAllRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long UnmuteAudioAllRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void UnmuteAudioAllRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool UnmuteAudioAllRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void UnmuteAudioAllRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string UnmuteAudioAllRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void UnmuteAudioAllRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long UnmuteAudioAllRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void UnmuteAudioAllRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string UnmuteAudioAllRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void UnmuteAudioAllRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string UnmuteAudioAllRequest::getVersion()const
+{
+	return version_;
+}
+
+void UnmuteAudioAllRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string UnmuteAudioAllRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void UnmuteAudioAllRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string UnmuteAudioAllRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void UnmuteAudioAllRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool UnmuteAudioAllRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void UnmuteAudioAllRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool UnmuteAudioAllRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void UnmuteAudioAllRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string UnmuteAudioAllRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void UnmuteAudioAllRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool UnmuteAudioAllRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void UnmuteAudioAllRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string UnmuteAudioAllRequest::getParticipantId()const
+{
+	return participantId_;
+}
+
+void UnmuteAudioAllRequest::setParticipantId(const std::string& participantId)
+{
+	participantId_ = participantId;
+	setParameter("ParticipantId", participantId);
+}
+
+std::string UnmuteAudioAllRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void UnmuteAudioAllRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string UnmuteAudioAllRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void UnmuteAudioAllRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string UnmuteAudioAllRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void UnmuteAudioAllRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string UnmuteAudioAllRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void UnmuteAudioAllRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string UnmuteAudioAllRequest::getAppId()const
+{
+	return appId_;
+}
+
+void UnmuteAudioAllRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string UnmuteAudioAllRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void UnmuteAudioAllRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string UnmuteAudioAllRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void UnmuteAudioAllRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long UnmuteAudioAllRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void UnmuteAudioAllRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 69 - 0
rtc/src/model/UnmuteAudioAllResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/UnmuteAudioAllResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+UnmuteAudioAllResult::UnmuteAudioAllResult() :
+	ServiceResult()
+{}
+
+UnmuteAudioAllResult::UnmuteAudioAllResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UnmuteAudioAllResult::~UnmuteAudioAllResult()
+{}
+
+void UnmuteAudioAllResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allParticipants = value["Participants"]["Participant"];
+	for (auto value : allParticipants)
+	{
+		Participant participantsObject;
+		if(!value["Id"].isNull())
+			participantsObject.id = value["Id"].asString();
+		if(!value["Code"].isNull())
+			participantsObject.code = value["Code"].asString();
+		if(!value["Message"].isNull())
+			participantsObject.message = value["Message"].asString();
+		participants_.push_back(participantsObject);
+	}
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string UnmuteAudioAllResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+std::vector<UnmuteAudioAllResult::Participant> UnmuteAudioAllResult::getParticipants()const
+{
+	return participants_;
+}
+

+ 281 - 0
rtc/src/model/UnmuteAudioRequest.cc

@@ -0,0 +1,281 @@
+/*
+ * 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/rtc/model/UnmuteAudioRequest.h>
+
+using AlibabaCloud::Rtc::Model::UnmuteAudioRequest;
+
+UnmuteAudioRequest::UnmuteAudioRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "UnmuteAudio")
+{}
+
+UnmuteAudioRequest::~UnmuteAudioRequest()
+{}
+
+std::string UnmuteAudioRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void UnmuteAudioRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string UnmuteAudioRequest::getProduct()const
+{
+	return product_;
+}
+
+void UnmuteAudioRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+std::vector<std::string> UnmuteAudioRequest::getParticipantIds()const
+{
+	return participantIds_;
+}
+
+void UnmuteAudioRequest::setParticipantIds(const std::vector<std::string>& participantIds)
+{
+	participantIds_ = participantIds;
+	for(int i = 0; i!= participantIds.size(); i++)
+		setParameter("ParticipantIds."+ std::to_string(i), participantIds.at(i));
+}
+
+long UnmuteAudioRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void UnmuteAudioRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool UnmuteAudioRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void UnmuteAudioRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string UnmuteAudioRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void UnmuteAudioRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long UnmuteAudioRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void UnmuteAudioRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string UnmuteAudioRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void UnmuteAudioRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string UnmuteAudioRequest::getVersion()const
+{
+	return version_;
+}
+
+void UnmuteAudioRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string UnmuteAudioRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void UnmuteAudioRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string UnmuteAudioRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void UnmuteAudioRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool UnmuteAudioRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void UnmuteAudioRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool UnmuteAudioRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void UnmuteAudioRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string UnmuteAudioRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void UnmuteAudioRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool UnmuteAudioRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void UnmuteAudioRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string UnmuteAudioRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void UnmuteAudioRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string UnmuteAudioRequest::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+void UnmuteAudioRequest::setConferenceId(const std::string& conferenceId)
+{
+	conferenceId_ = conferenceId;
+	setParameter("ConferenceId", conferenceId);
+}
+
+std::string UnmuteAudioRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void UnmuteAudioRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string UnmuteAudioRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void UnmuteAudioRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string UnmuteAudioRequest::getAppId()const
+{
+	return appId_;
+}
+
+void UnmuteAudioRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string UnmuteAudioRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void UnmuteAudioRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string UnmuteAudioRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void UnmuteAudioRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long UnmuteAudioRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void UnmuteAudioRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 69 - 0
rtc/src/model/UnmuteAudioResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/rtc/model/UnmuteAudioResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+UnmuteAudioResult::UnmuteAudioResult() :
+	ServiceResult()
+{}
+
+UnmuteAudioResult::UnmuteAudioResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UnmuteAudioResult::~UnmuteAudioResult()
+{}
+
+void UnmuteAudioResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allParticipants = value["Participants"]["Participant"];
+	for (auto value : allParticipants)
+	{
+		Participant participantsObject;
+		if(!value["Id"].isNull())
+			participantsObject.id = value["Id"].asString();
+		if(!value["Code"].isNull())
+			participantsObject.code = value["Code"].asString();
+		if(!value["Message"].isNull())
+			participantsObject.message = value["Message"].asString();
+		participants_.push_back(participantsObject);
+	}
+	if(!value["ConferenceId"].isNull())
+		conferenceId_ = value["ConferenceId"].asString();
+
+}
+
+std::string UnmuteAudioResult::getConferenceId()const
+{
+	return conferenceId_;
+}
+
+std::vector<UnmuteAudioResult::Participant> UnmuteAudioResult::getParticipants()const
+{
+	return participants_;
+}
+

+ 280 - 0
rtc/src/model/UpdateChannelRequest.cc

@@ -0,0 +1,280 @@
+/*
+ * 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/rtc/model/UpdateChannelRequest.h>
+
+using AlibabaCloud::Rtc::Model::UpdateChannelRequest;
+
+UpdateChannelRequest::UpdateChannelRequest() :
+	RpcServiceRequest("rtc", "2018-01-11", "UpdateChannel")
+{}
+
+UpdateChannelRequest::~UpdateChannelRequest()
+{}
+
+std::string UpdateChannelRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void UpdateChannelRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string UpdateChannelRequest::getProduct()const
+{
+	return product_;
+}
+
+void UpdateChannelRequest::setProduct(const std::string& product)
+{
+	product_ = product;
+	setParameter("Product", product);
+}
+
+long UpdateChannelRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void UpdateChannelRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool UpdateChannelRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void UpdateChannelRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string UpdateChannelRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void UpdateChannelRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long UpdateChannelRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void UpdateChannelRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string UpdateChannelRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void UpdateChannelRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string UpdateChannelRequest::getVersion()const
+{
+	return version_;
+}
+
+void UpdateChannelRequest::setVersion(const std::string& version)
+{
+	version_ = version;
+	setParameter("Version", version);
+}
+
+std::string UpdateChannelRequest::getNonce()const
+{
+	return nonce_;
+}
+
+void UpdateChannelRequest::setNonce(const std::string& nonce)
+{
+	nonce_ = nonce;
+	setParameter("Nonce", nonce);
+}
+
+std::string UpdateChannelRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void UpdateChannelRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string UpdateChannelRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void UpdateChannelRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool UpdateChannelRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void UpdateChannelRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool UpdateChannelRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void UpdateChannelRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+std::string UpdateChannelRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void UpdateChannelRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+bool UpdateChannelRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void UpdateChannelRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string UpdateChannelRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void UpdateChannelRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string UpdateChannelRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void UpdateChannelRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string UpdateChannelRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void UpdateChannelRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string UpdateChannelRequest::getAppId()const
+{
+	return appId_;
+}
+
+void UpdateChannelRequest::setAppId(const std::string& appId)
+{
+	appId_ = appId;
+	setParameter("AppId", appId);
+}
+
+std::string UpdateChannelRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void UpdateChannelRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string UpdateChannelRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void UpdateChannelRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+std::string UpdateChannelRequest::getChannelId()const
+{
+	return channelId_;
+}
+
+void UpdateChannelRequest::setChannelId(const std::string& channelId)
+{
+	channelId_ = channelId;
+	setParameter("ChannelId", channelId);
+}
+
+long UpdateChannelRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void UpdateChannelRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+

+ 59 - 0
rtc/src/model/UpdateChannelResult.cc

@@ -0,0 +1,59 @@
+/*
+ * 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/rtc/model/UpdateChannelResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Rtc;
+using namespace AlibabaCloud::Rtc::Model;
+
+UpdateChannelResult::UpdateChannelResult() :
+	ServiceResult()
+{}
+
+UpdateChannelResult::UpdateChannelResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateChannelResult::~UpdateChannelResult()
+{}
+
+void UpdateChannelResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["Nonce"].isNull())
+		nonce_ = value["Nonce"].asString();
+	if(!value["Timestamp"].isNull())
+		timestamp_ = std::stoi(value["Timestamp"].asString());
+
+}
+
+std::string UpdateChannelResult::getNonce()const
+{
+	return nonce_;
+}
+
+int UpdateChannelResult::getTimestamp()const
+{
+	return timestamp_;
+}
+