PushClient.h 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef ALIBABACLOUD_PUSH_PUSHCLIENT_H_
  17. #define ALIBABACLOUD_PUSH_PUSHCLIENT_H_
  18. #include <future>
  19. #include <alibabacloud/core/AsyncCallerContext.h>
  20. #include <alibabacloud/core/EndpointProvider.h>
  21. #include <alibabacloud/core/RpcServiceClient.h>
  22. #include "PushExport.h"
  23. #include "model/BindAliasRequest.h"
  24. #include "model/BindAliasResult.h"
  25. #include "model/BindPhoneRequest.h"
  26. #include "model/BindPhoneResult.h"
  27. #include "model/BindTagRequest.h"
  28. #include "model/BindTagResult.h"
  29. #include "model/CancelPushRequest.h"
  30. #include "model/CancelPushResult.h"
  31. #include "model/CheckDeviceRequest.h"
  32. #include "model/CheckDeviceResult.h"
  33. #include "model/CheckDevicesRequest.h"
  34. #include "model/CheckDevicesResult.h"
  35. #include "model/CompleteContinuouslyPushRequest.h"
  36. #include "model/CompleteContinuouslyPushResult.h"
  37. #include "model/ContinuouslyPushRequest.h"
  38. #include "model/ContinuouslyPushResult.h"
  39. #include "model/ListPushRecordsRequest.h"
  40. #include "model/ListPushRecordsResult.h"
  41. #include "model/ListSummaryAppsRequest.h"
  42. #include "model/ListSummaryAppsResult.h"
  43. #include "model/ListTagsRequest.h"
  44. #include "model/ListTagsResult.h"
  45. #include "model/MassPushRequest.h"
  46. #include "model/MassPushResult.h"
  47. #include "model/PushRequest.h"
  48. #include "model/PushResult.h"
  49. #include "model/PushMessageToAndroidRequest.h"
  50. #include "model/PushMessageToAndroidResult.h"
  51. #include "model/PushMessageToiOSRequest.h"
  52. #include "model/PushMessageToiOSResult.h"
  53. #include "model/PushNoticeToAndroidRequest.h"
  54. #include "model/PushNoticeToAndroidResult.h"
  55. #include "model/PushNoticeToiOSRequest.h"
  56. #include "model/PushNoticeToiOSResult.h"
  57. #include "model/QueryAliasesRequest.h"
  58. #include "model/QueryAliasesResult.h"
  59. #include "model/QueryDeviceInfoRequest.h"
  60. #include "model/QueryDeviceInfoResult.h"
  61. #include "model/QueryDeviceStatRequest.h"
  62. #include "model/QueryDeviceStatResult.h"
  63. #include "model/QueryDevicesByAccountRequest.h"
  64. #include "model/QueryDevicesByAccountResult.h"
  65. #include "model/QueryDevicesByAliasRequest.h"
  66. #include "model/QueryDevicesByAliasResult.h"
  67. #include "model/QueryPushListRequest.h"
  68. #include "model/QueryPushListResult.h"
  69. #include "model/QueryPushStatByAppRequest.h"
  70. #include "model/QueryPushStatByAppResult.h"
  71. #include "model/QueryPushStatByMsgRequest.h"
  72. #include "model/QueryPushStatByMsgResult.h"
  73. #include "model/QueryTagsRequest.h"
  74. #include "model/QueryTagsResult.h"
  75. #include "model/QueryUniqueDeviceStatRequest.h"
  76. #include "model/QueryUniqueDeviceStatResult.h"
  77. #include "model/RemoveTagRequest.h"
  78. #include "model/RemoveTagResult.h"
  79. #include "model/UnbindAliasRequest.h"
  80. #include "model/UnbindAliasResult.h"
  81. #include "model/UnbindPhoneRequest.h"
  82. #include "model/UnbindPhoneResult.h"
  83. #include "model/UnbindTagRequest.h"
  84. #include "model/UnbindTagResult.h"
  85. namespace AlibabaCloud
  86. {
  87. namespace Push
  88. {
  89. class ALIBABACLOUD_PUSH_EXPORT PushClient : public RpcServiceClient
  90. {
  91. public:
  92. typedef Outcome<Error, Model::BindAliasResult> BindAliasOutcome;
  93. typedef std::future<BindAliasOutcome> BindAliasOutcomeCallable;
  94. typedef std::function<void(const PushClient*, const Model::BindAliasRequest&, const BindAliasOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> BindAliasAsyncHandler;
  95. typedef Outcome<Error, Model::BindPhoneResult> BindPhoneOutcome;
  96. typedef std::future<BindPhoneOutcome> BindPhoneOutcomeCallable;
  97. typedef std::function<void(const PushClient*, const Model::BindPhoneRequest&, const BindPhoneOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> BindPhoneAsyncHandler;
  98. typedef Outcome<Error, Model::BindTagResult> BindTagOutcome;
  99. typedef std::future<BindTagOutcome> BindTagOutcomeCallable;
  100. typedef std::function<void(const PushClient*, const Model::BindTagRequest&, const BindTagOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> BindTagAsyncHandler;
  101. typedef Outcome<Error, Model::CancelPushResult> CancelPushOutcome;
  102. typedef std::future<CancelPushOutcome> CancelPushOutcomeCallable;
  103. typedef std::function<void(const PushClient*, const Model::CancelPushRequest&, const CancelPushOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CancelPushAsyncHandler;
  104. typedef Outcome<Error, Model::CheckDeviceResult> CheckDeviceOutcome;
  105. typedef std::future<CheckDeviceOutcome> CheckDeviceOutcomeCallable;
  106. typedef std::function<void(const PushClient*, const Model::CheckDeviceRequest&, const CheckDeviceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CheckDeviceAsyncHandler;
  107. typedef Outcome<Error, Model::CheckDevicesResult> CheckDevicesOutcome;
  108. typedef std::future<CheckDevicesOutcome> CheckDevicesOutcomeCallable;
  109. typedef std::function<void(const PushClient*, const Model::CheckDevicesRequest&, const CheckDevicesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CheckDevicesAsyncHandler;
  110. typedef Outcome<Error, Model::CompleteContinuouslyPushResult> CompleteContinuouslyPushOutcome;
  111. typedef std::future<CompleteContinuouslyPushOutcome> CompleteContinuouslyPushOutcomeCallable;
  112. typedef std::function<void(const PushClient*, const Model::CompleteContinuouslyPushRequest&, const CompleteContinuouslyPushOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CompleteContinuouslyPushAsyncHandler;
  113. typedef Outcome<Error, Model::ContinuouslyPushResult> ContinuouslyPushOutcome;
  114. typedef std::future<ContinuouslyPushOutcome> ContinuouslyPushOutcomeCallable;
  115. typedef std::function<void(const PushClient*, const Model::ContinuouslyPushRequest&, const ContinuouslyPushOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ContinuouslyPushAsyncHandler;
  116. typedef Outcome<Error, Model::ListPushRecordsResult> ListPushRecordsOutcome;
  117. typedef std::future<ListPushRecordsOutcome> ListPushRecordsOutcomeCallable;
  118. typedef std::function<void(const PushClient*, const Model::ListPushRecordsRequest&, const ListPushRecordsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPushRecordsAsyncHandler;
  119. typedef Outcome<Error, Model::ListSummaryAppsResult> ListSummaryAppsOutcome;
  120. typedef std::future<ListSummaryAppsOutcome> ListSummaryAppsOutcomeCallable;
  121. typedef std::function<void(const PushClient*, const Model::ListSummaryAppsRequest&, const ListSummaryAppsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSummaryAppsAsyncHandler;
  122. typedef Outcome<Error, Model::ListTagsResult> ListTagsOutcome;
  123. typedef std::future<ListTagsOutcome> ListTagsOutcomeCallable;
  124. typedef std::function<void(const PushClient*, const Model::ListTagsRequest&, const ListTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagsAsyncHandler;
  125. typedef Outcome<Error, Model::MassPushResult> MassPushOutcome;
  126. typedef std::future<MassPushOutcome> MassPushOutcomeCallable;
  127. typedef std::function<void(const PushClient*, const Model::MassPushRequest&, const MassPushOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MassPushAsyncHandler;
  128. typedef Outcome<Error, Model::PushResult> PushOutcome;
  129. typedef std::future<PushOutcome> PushOutcomeCallable;
  130. typedef std::function<void(const PushClient*, const Model::PushRequest&, const PushOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PushAsyncHandler;
  131. typedef Outcome<Error, Model::PushMessageToAndroidResult> PushMessageToAndroidOutcome;
  132. typedef std::future<PushMessageToAndroidOutcome> PushMessageToAndroidOutcomeCallable;
  133. typedef std::function<void(const PushClient*, const Model::PushMessageToAndroidRequest&, const PushMessageToAndroidOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PushMessageToAndroidAsyncHandler;
  134. typedef Outcome<Error, Model::PushMessageToiOSResult> PushMessageToiOSOutcome;
  135. typedef std::future<PushMessageToiOSOutcome> PushMessageToiOSOutcomeCallable;
  136. typedef std::function<void(const PushClient*, const Model::PushMessageToiOSRequest&, const PushMessageToiOSOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PushMessageToiOSAsyncHandler;
  137. typedef Outcome<Error, Model::PushNoticeToAndroidResult> PushNoticeToAndroidOutcome;
  138. typedef std::future<PushNoticeToAndroidOutcome> PushNoticeToAndroidOutcomeCallable;
  139. typedef std::function<void(const PushClient*, const Model::PushNoticeToAndroidRequest&, const PushNoticeToAndroidOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PushNoticeToAndroidAsyncHandler;
  140. typedef Outcome<Error, Model::PushNoticeToiOSResult> PushNoticeToiOSOutcome;
  141. typedef std::future<PushNoticeToiOSOutcome> PushNoticeToiOSOutcomeCallable;
  142. typedef std::function<void(const PushClient*, const Model::PushNoticeToiOSRequest&, const PushNoticeToiOSOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PushNoticeToiOSAsyncHandler;
  143. typedef Outcome<Error, Model::QueryAliasesResult> QueryAliasesOutcome;
  144. typedef std::future<QueryAliasesOutcome> QueryAliasesOutcomeCallable;
  145. typedef std::function<void(const PushClient*, const Model::QueryAliasesRequest&, const QueryAliasesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryAliasesAsyncHandler;
  146. typedef Outcome<Error, Model::QueryDeviceInfoResult> QueryDeviceInfoOutcome;
  147. typedef std::future<QueryDeviceInfoOutcome> QueryDeviceInfoOutcomeCallable;
  148. typedef std::function<void(const PushClient*, const Model::QueryDeviceInfoRequest&, const QueryDeviceInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryDeviceInfoAsyncHandler;
  149. typedef Outcome<Error, Model::QueryDeviceStatResult> QueryDeviceStatOutcome;
  150. typedef std::future<QueryDeviceStatOutcome> QueryDeviceStatOutcomeCallable;
  151. typedef std::function<void(const PushClient*, const Model::QueryDeviceStatRequest&, const QueryDeviceStatOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryDeviceStatAsyncHandler;
  152. typedef Outcome<Error, Model::QueryDevicesByAccountResult> QueryDevicesByAccountOutcome;
  153. typedef std::future<QueryDevicesByAccountOutcome> QueryDevicesByAccountOutcomeCallable;
  154. typedef std::function<void(const PushClient*, const Model::QueryDevicesByAccountRequest&, const QueryDevicesByAccountOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryDevicesByAccountAsyncHandler;
  155. typedef Outcome<Error, Model::QueryDevicesByAliasResult> QueryDevicesByAliasOutcome;
  156. typedef std::future<QueryDevicesByAliasOutcome> QueryDevicesByAliasOutcomeCallable;
  157. typedef std::function<void(const PushClient*, const Model::QueryDevicesByAliasRequest&, const QueryDevicesByAliasOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryDevicesByAliasAsyncHandler;
  158. typedef Outcome<Error, Model::QueryPushListResult> QueryPushListOutcome;
  159. typedef std::future<QueryPushListOutcome> QueryPushListOutcomeCallable;
  160. typedef std::function<void(const PushClient*, const Model::QueryPushListRequest&, const QueryPushListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryPushListAsyncHandler;
  161. typedef Outcome<Error, Model::QueryPushStatByAppResult> QueryPushStatByAppOutcome;
  162. typedef std::future<QueryPushStatByAppOutcome> QueryPushStatByAppOutcomeCallable;
  163. typedef std::function<void(const PushClient*, const Model::QueryPushStatByAppRequest&, const QueryPushStatByAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryPushStatByAppAsyncHandler;
  164. typedef Outcome<Error, Model::QueryPushStatByMsgResult> QueryPushStatByMsgOutcome;
  165. typedef std::future<QueryPushStatByMsgOutcome> QueryPushStatByMsgOutcomeCallable;
  166. typedef std::function<void(const PushClient*, const Model::QueryPushStatByMsgRequest&, const QueryPushStatByMsgOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryPushStatByMsgAsyncHandler;
  167. typedef Outcome<Error, Model::QueryTagsResult> QueryTagsOutcome;
  168. typedef std::future<QueryTagsOutcome> QueryTagsOutcomeCallable;
  169. typedef std::function<void(const PushClient*, const Model::QueryTagsRequest&, const QueryTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryTagsAsyncHandler;
  170. typedef Outcome<Error, Model::QueryUniqueDeviceStatResult> QueryUniqueDeviceStatOutcome;
  171. typedef std::future<QueryUniqueDeviceStatOutcome> QueryUniqueDeviceStatOutcomeCallable;
  172. typedef std::function<void(const PushClient*, const Model::QueryUniqueDeviceStatRequest&, const QueryUniqueDeviceStatOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryUniqueDeviceStatAsyncHandler;
  173. typedef Outcome<Error, Model::RemoveTagResult> RemoveTagOutcome;
  174. typedef std::future<RemoveTagOutcome> RemoveTagOutcomeCallable;
  175. typedef std::function<void(const PushClient*, const Model::RemoveTagRequest&, const RemoveTagOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RemoveTagAsyncHandler;
  176. typedef Outcome<Error, Model::UnbindAliasResult> UnbindAliasOutcome;
  177. typedef std::future<UnbindAliasOutcome> UnbindAliasOutcomeCallable;
  178. typedef std::function<void(const PushClient*, const Model::UnbindAliasRequest&, const UnbindAliasOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnbindAliasAsyncHandler;
  179. typedef Outcome<Error, Model::UnbindPhoneResult> UnbindPhoneOutcome;
  180. typedef std::future<UnbindPhoneOutcome> UnbindPhoneOutcomeCallable;
  181. typedef std::function<void(const PushClient*, const Model::UnbindPhoneRequest&, const UnbindPhoneOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnbindPhoneAsyncHandler;
  182. typedef Outcome<Error, Model::UnbindTagResult> UnbindTagOutcome;
  183. typedef std::future<UnbindTagOutcome> UnbindTagOutcomeCallable;
  184. typedef std::function<void(const PushClient*, const Model::UnbindTagRequest&, const UnbindTagOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnbindTagAsyncHandler;
  185. PushClient(const Credentials &credentials, const ClientConfiguration &configuration);
  186. PushClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
  187. PushClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
  188. ~PushClient();
  189. BindAliasOutcome bindAlias(const Model::BindAliasRequest &request)const;
  190. void bindAliasAsync(const Model::BindAliasRequest& request, const BindAliasAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  191. BindAliasOutcomeCallable bindAliasCallable(const Model::BindAliasRequest& request) const;
  192. BindPhoneOutcome bindPhone(const Model::BindPhoneRequest &request)const;
  193. void bindPhoneAsync(const Model::BindPhoneRequest& request, const BindPhoneAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  194. BindPhoneOutcomeCallable bindPhoneCallable(const Model::BindPhoneRequest& request) const;
  195. BindTagOutcome bindTag(const Model::BindTagRequest &request)const;
  196. void bindTagAsync(const Model::BindTagRequest& request, const BindTagAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  197. BindTagOutcomeCallable bindTagCallable(const Model::BindTagRequest& request) const;
  198. CancelPushOutcome cancelPush(const Model::CancelPushRequest &request)const;
  199. void cancelPushAsync(const Model::CancelPushRequest& request, const CancelPushAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  200. CancelPushOutcomeCallable cancelPushCallable(const Model::CancelPushRequest& request) const;
  201. CheckDeviceOutcome checkDevice(const Model::CheckDeviceRequest &request)const;
  202. void checkDeviceAsync(const Model::CheckDeviceRequest& request, const CheckDeviceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  203. CheckDeviceOutcomeCallable checkDeviceCallable(const Model::CheckDeviceRequest& request) const;
  204. CheckDevicesOutcome checkDevices(const Model::CheckDevicesRequest &request)const;
  205. void checkDevicesAsync(const Model::CheckDevicesRequest& request, const CheckDevicesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  206. CheckDevicesOutcomeCallable checkDevicesCallable(const Model::CheckDevicesRequest& request) const;
  207. CompleteContinuouslyPushOutcome completeContinuouslyPush(const Model::CompleteContinuouslyPushRequest &request)const;
  208. void completeContinuouslyPushAsync(const Model::CompleteContinuouslyPushRequest& request, const CompleteContinuouslyPushAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  209. CompleteContinuouslyPushOutcomeCallable completeContinuouslyPushCallable(const Model::CompleteContinuouslyPushRequest& request) const;
  210. ContinuouslyPushOutcome continuouslyPush(const Model::ContinuouslyPushRequest &request)const;
  211. void continuouslyPushAsync(const Model::ContinuouslyPushRequest& request, const ContinuouslyPushAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  212. ContinuouslyPushOutcomeCallable continuouslyPushCallable(const Model::ContinuouslyPushRequest& request) const;
  213. ListPushRecordsOutcome listPushRecords(const Model::ListPushRecordsRequest &request)const;
  214. void listPushRecordsAsync(const Model::ListPushRecordsRequest& request, const ListPushRecordsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  215. ListPushRecordsOutcomeCallable listPushRecordsCallable(const Model::ListPushRecordsRequest& request) const;
  216. ListSummaryAppsOutcome listSummaryApps(const Model::ListSummaryAppsRequest &request)const;
  217. void listSummaryAppsAsync(const Model::ListSummaryAppsRequest& request, const ListSummaryAppsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  218. ListSummaryAppsOutcomeCallable listSummaryAppsCallable(const Model::ListSummaryAppsRequest& request) const;
  219. ListTagsOutcome listTags(const Model::ListTagsRequest &request)const;
  220. void listTagsAsync(const Model::ListTagsRequest& request, const ListTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  221. ListTagsOutcomeCallable listTagsCallable(const Model::ListTagsRequest& request) const;
  222. MassPushOutcome massPush(const Model::MassPushRequest &request)const;
  223. void massPushAsync(const Model::MassPushRequest& request, const MassPushAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  224. MassPushOutcomeCallable massPushCallable(const Model::MassPushRequest& request) const;
  225. PushOutcome push(const Model::PushRequest &request)const;
  226. void pushAsync(const Model::PushRequest& request, const PushAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  227. PushOutcomeCallable pushCallable(const Model::PushRequest& request) const;
  228. PushMessageToAndroidOutcome pushMessageToAndroid(const Model::PushMessageToAndroidRequest &request)const;
  229. void pushMessageToAndroidAsync(const Model::PushMessageToAndroidRequest& request, const PushMessageToAndroidAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  230. PushMessageToAndroidOutcomeCallable pushMessageToAndroidCallable(const Model::PushMessageToAndroidRequest& request) const;
  231. PushMessageToiOSOutcome pushMessageToiOS(const Model::PushMessageToiOSRequest &request)const;
  232. void pushMessageToiOSAsync(const Model::PushMessageToiOSRequest& request, const PushMessageToiOSAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  233. PushMessageToiOSOutcomeCallable pushMessageToiOSCallable(const Model::PushMessageToiOSRequest& request) const;
  234. PushNoticeToAndroidOutcome pushNoticeToAndroid(const Model::PushNoticeToAndroidRequest &request)const;
  235. void pushNoticeToAndroidAsync(const Model::PushNoticeToAndroidRequest& request, const PushNoticeToAndroidAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  236. PushNoticeToAndroidOutcomeCallable pushNoticeToAndroidCallable(const Model::PushNoticeToAndroidRequest& request) const;
  237. PushNoticeToiOSOutcome pushNoticeToiOS(const Model::PushNoticeToiOSRequest &request)const;
  238. void pushNoticeToiOSAsync(const Model::PushNoticeToiOSRequest& request, const PushNoticeToiOSAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  239. PushNoticeToiOSOutcomeCallable pushNoticeToiOSCallable(const Model::PushNoticeToiOSRequest& request) const;
  240. QueryAliasesOutcome queryAliases(const Model::QueryAliasesRequest &request)const;
  241. void queryAliasesAsync(const Model::QueryAliasesRequest& request, const QueryAliasesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  242. QueryAliasesOutcomeCallable queryAliasesCallable(const Model::QueryAliasesRequest& request) const;
  243. QueryDeviceInfoOutcome queryDeviceInfo(const Model::QueryDeviceInfoRequest &request)const;
  244. void queryDeviceInfoAsync(const Model::QueryDeviceInfoRequest& request, const QueryDeviceInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  245. QueryDeviceInfoOutcomeCallable queryDeviceInfoCallable(const Model::QueryDeviceInfoRequest& request) const;
  246. QueryDeviceStatOutcome queryDeviceStat(const Model::QueryDeviceStatRequest &request)const;
  247. void queryDeviceStatAsync(const Model::QueryDeviceStatRequest& request, const QueryDeviceStatAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  248. QueryDeviceStatOutcomeCallable queryDeviceStatCallable(const Model::QueryDeviceStatRequest& request) const;
  249. QueryDevicesByAccountOutcome queryDevicesByAccount(const Model::QueryDevicesByAccountRequest &request)const;
  250. void queryDevicesByAccountAsync(const Model::QueryDevicesByAccountRequest& request, const QueryDevicesByAccountAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  251. QueryDevicesByAccountOutcomeCallable queryDevicesByAccountCallable(const Model::QueryDevicesByAccountRequest& request) const;
  252. QueryDevicesByAliasOutcome queryDevicesByAlias(const Model::QueryDevicesByAliasRequest &request)const;
  253. void queryDevicesByAliasAsync(const Model::QueryDevicesByAliasRequest& request, const QueryDevicesByAliasAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  254. QueryDevicesByAliasOutcomeCallable queryDevicesByAliasCallable(const Model::QueryDevicesByAliasRequest& request) const;
  255. QueryPushListOutcome queryPushList(const Model::QueryPushListRequest &request)const;
  256. void queryPushListAsync(const Model::QueryPushListRequest& request, const QueryPushListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  257. QueryPushListOutcomeCallable queryPushListCallable(const Model::QueryPushListRequest& request) const;
  258. QueryPushStatByAppOutcome queryPushStatByApp(const Model::QueryPushStatByAppRequest &request)const;
  259. void queryPushStatByAppAsync(const Model::QueryPushStatByAppRequest& request, const QueryPushStatByAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  260. QueryPushStatByAppOutcomeCallable queryPushStatByAppCallable(const Model::QueryPushStatByAppRequest& request) const;
  261. QueryPushStatByMsgOutcome queryPushStatByMsg(const Model::QueryPushStatByMsgRequest &request)const;
  262. void queryPushStatByMsgAsync(const Model::QueryPushStatByMsgRequest& request, const QueryPushStatByMsgAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  263. QueryPushStatByMsgOutcomeCallable queryPushStatByMsgCallable(const Model::QueryPushStatByMsgRequest& request) const;
  264. QueryTagsOutcome queryTags(const Model::QueryTagsRequest &request)const;
  265. void queryTagsAsync(const Model::QueryTagsRequest& request, const QueryTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  266. QueryTagsOutcomeCallable queryTagsCallable(const Model::QueryTagsRequest& request) const;
  267. QueryUniqueDeviceStatOutcome queryUniqueDeviceStat(const Model::QueryUniqueDeviceStatRequest &request)const;
  268. void queryUniqueDeviceStatAsync(const Model::QueryUniqueDeviceStatRequest& request, const QueryUniqueDeviceStatAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  269. QueryUniqueDeviceStatOutcomeCallable queryUniqueDeviceStatCallable(const Model::QueryUniqueDeviceStatRequest& request) const;
  270. RemoveTagOutcome removeTag(const Model::RemoveTagRequest &request)const;
  271. void removeTagAsync(const Model::RemoveTagRequest& request, const RemoveTagAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  272. RemoveTagOutcomeCallable removeTagCallable(const Model::RemoveTagRequest& request) const;
  273. UnbindAliasOutcome unbindAlias(const Model::UnbindAliasRequest &request)const;
  274. void unbindAliasAsync(const Model::UnbindAliasRequest& request, const UnbindAliasAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  275. UnbindAliasOutcomeCallable unbindAliasCallable(const Model::UnbindAliasRequest& request) const;
  276. UnbindPhoneOutcome unbindPhone(const Model::UnbindPhoneRequest &request)const;
  277. void unbindPhoneAsync(const Model::UnbindPhoneRequest& request, const UnbindPhoneAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  278. UnbindPhoneOutcomeCallable unbindPhoneCallable(const Model::UnbindPhoneRequest& request) const;
  279. UnbindTagOutcome unbindTag(const Model::UnbindTagRequest &request)const;
  280. void unbindTagAsync(const Model::UnbindTagRequest& request, const UnbindTagAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
  281. UnbindTagOutcomeCallable unbindTagCallable(const Model::UnbindTagRequest& request) const;
  282. private:
  283. std::shared_ptr<EndpointProvider> endpointProvider_;
  284. };
  285. }
  286. }
  287. #endif // !ALIBABACLOUD_PUSH_PUSHCLIENT_H_