Dingtalk.php 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440
  1. <?php
  2. // This file is auto-generated, don't edit it. Thanks.
  3. namespace AlibabaCloud\SDK\Dingtalk\Vcard_1_0;
  4. use AlibabaCloud\OpenApiUtil\OpenApiUtilClient;
  5. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\AppendSpaceHeaders;
  6. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\AppendSpaceRequest;
  7. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\AppendSpaceResponse;
  8. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateAndDeliverHeaders;
  9. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateAndDeliverRequest;
  10. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateAndDeliverResponse;
  11. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateCardHeaders;
  12. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateCardRequest;
  13. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\CreateCardResponse;
  14. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\DeliverCardHeaders;
  15. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\DeliverCardRequest;
  16. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\DeliverCardResponse;
  17. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\RegisterCallbackHeaders;
  18. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\RegisterCallbackRequest;
  19. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\RegisterCallbackResponse;
  20. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\UpdateCardHeaders;
  21. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\UpdateCardRequest;
  22. use AlibabaCloud\SDK\Dingtalk\Vcard_1_0\Models\UpdateCardResponse;
  23. use AlibabaCloud\Tea\Utils\Utils;
  24. use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
  25. use Darabonba\OpenApi\Models\OpenApiRequest;
  26. use Darabonba\OpenApi\OpenApiClient;
  27. class Dingtalk extends OpenApiClient
  28. {
  29. public function __construct($config)
  30. {
  31. parent::__construct($config);
  32. $this->_endpointRule = '';
  33. if (Utils::empty_($this->_endpoint)) {
  34. $this->_endpoint = 'api.dingtalk.com';
  35. }
  36. }
  37. /**
  38. * @param AppendSpaceRequest $request
  39. *
  40. * @return AppendSpaceResponse
  41. */
  42. public function appendSpace($request)
  43. {
  44. $runtime = new RuntimeOptions([]);
  45. $headers = new AppendSpaceHeaders([]);
  46. return $this->appendSpaceWithOptions($request, $headers, $runtime);
  47. }
  48. /**
  49. * @param AppendSpaceRequest $request
  50. * @param AppendSpaceHeaders $headers
  51. * @param RuntimeOptions $runtime
  52. *
  53. * @return AppendSpaceResponse
  54. */
  55. public function appendSpaceWithOptions($request, $headers, $runtime)
  56. {
  57. Utils::validateModel($request);
  58. $body = [];
  59. if (!Utils::isUnset($request->coFeedOpenSpaceModel)) {
  60. @$body['coFeedOpenSpaceModel'] = $request->coFeedOpenSpaceModel;
  61. }
  62. if (!Utils::isUnset($request->imGroupOpenSpaceModel)) {
  63. @$body['imGroupOpenSpaceModel'] = $request->imGroupOpenSpaceModel;
  64. }
  65. if (!Utils::isUnset($request->imSingleOpenSpaceModel)) {
  66. @$body['imSingleOpenSpaceModel'] = $request->imSingleOpenSpaceModel;
  67. }
  68. if (!Utils::isUnset($request->outTrackId)) {
  69. @$body['outTrackId'] = $request->outTrackId;
  70. }
  71. if (!Utils::isUnset($request->topOpenSpaceModel)) {
  72. @$body['topOpenSpaceModel'] = $request->topOpenSpaceModel;
  73. }
  74. if (!Utils::isUnset($request->workBenchOpenSpaceModel)) {
  75. @$body['workBenchOpenSpaceModel'] = $request->workBenchOpenSpaceModel;
  76. }
  77. $realHeaders = [];
  78. if (!Utils::isUnset($headers->commonHeaders)) {
  79. $realHeaders = $headers->commonHeaders;
  80. }
  81. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  82. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  83. }
  84. $req = new OpenApiRequest([
  85. 'headers' => $realHeaders,
  86. 'body' => OpenApiUtilClient::parseToMap($body),
  87. ]);
  88. return AppendSpaceResponse::fromMap($this->doROARequest('AppendSpace', 'card_1.0', 'HTTP', 'PUT', 'AK', '/v1.0/card/instances/spaces', 'json', $req, $runtime));
  89. }
  90. /**
  91. * @param CreateAndDeliverRequest $request
  92. *
  93. * @return CreateAndDeliverResponse
  94. */
  95. public function createAndDeliver($request)
  96. {
  97. $runtime = new RuntimeOptions([]);
  98. $headers = new CreateAndDeliverHeaders([]);
  99. return $this->createAndDeliverWithOptions($request, $headers, $runtime);
  100. }
  101. /**
  102. * @param CreateAndDeliverRequest $request
  103. * @param CreateAndDeliverHeaders $headers
  104. * @param RuntimeOptions $runtime
  105. *
  106. * @return CreateAndDeliverResponse
  107. */
  108. public function createAndDeliverWithOptions($request, $headers, $runtime)
  109. {
  110. Utils::validateModel($request);
  111. $body = [];
  112. if (!Utils::isUnset($request->callbackRouteKey)) {
  113. @$body['callbackRouteKey'] = $request->callbackRouteKey;
  114. }
  115. if (!Utils::isUnset($request->cardAtUserIds)) {
  116. @$body['cardAtUserIds'] = $request->cardAtUserIds;
  117. }
  118. if (!Utils::isUnset($request->cardData)) {
  119. @$body['cardData'] = $request->cardData;
  120. }
  121. if (!Utils::isUnset($request->cardTemplateId)) {
  122. @$body['cardTemplateId'] = $request->cardTemplateId;
  123. }
  124. if (!Utils::isUnset($request->coFeedOpenDeliverModel)) {
  125. @$body['coFeedOpenDeliverModel'] = $request->coFeedOpenDeliverModel;
  126. }
  127. if (!Utils::isUnset($request->coFeedOpenSpaceModel)) {
  128. @$body['coFeedOpenSpaceModel'] = $request->coFeedOpenSpaceModel;
  129. }
  130. if (!Utils::isUnset($request->imGroupOpenDeliverModel)) {
  131. @$body['imGroupOpenDeliverModel'] = $request->imGroupOpenDeliverModel;
  132. }
  133. if (!Utils::isUnset($request->imGroupOpenSpaceModel)) {
  134. @$body['imGroupOpenSpaceModel'] = $request->imGroupOpenSpaceModel;
  135. }
  136. if (!Utils::isUnset($request->imSingleOpenDeliverModel)) {
  137. @$body['imSingleOpenDeliverModel'] = $request->imSingleOpenDeliverModel;
  138. }
  139. if (!Utils::isUnset($request->imSingleOpenSpaceModel)) {
  140. @$body['imSingleOpenSpaceModel'] = $request->imSingleOpenSpaceModel;
  141. }
  142. if (!Utils::isUnset($request->openDynamicDataConfig)) {
  143. @$body['openDynamicDataConfig'] = $request->openDynamicDataConfig;
  144. }
  145. if (!Utils::isUnset($request->openSpaceId)) {
  146. @$body['openSpaceId'] = $request->openSpaceId;
  147. }
  148. if (!Utils::isUnset($request->outTrackId)) {
  149. @$body['outTrackId'] = $request->outTrackId;
  150. }
  151. if (!Utils::isUnset($request->privateData)) {
  152. @$body['privateData'] = $request->privateData;
  153. }
  154. if (!Utils::isUnset($request->topOpenDeliverModel)) {
  155. @$body['topOpenDeliverModel'] = $request->topOpenDeliverModel;
  156. }
  157. if (!Utils::isUnset($request->topOpenSpaceModel)) {
  158. @$body['topOpenSpaceModel'] = $request->topOpenSpaceModel;
  159. }
  160. if (!Utils::isUnset($request->userId)) {
  161. @$body['userId'] = $request->userId;
  162. }
  163. if (!Utils::isUnset($request->userIdType)) {
  164. @$body['userIdType'] = $request->userIdType;
  165. }
  166. if (!Utils::isUnset($request->workBenchOpenDeliverModel)) {
  167. @$body['workBenchOpenDeliverModel'] = $request->workBenchOpenDeliverModel;
  168. }
  169. if (!Utils::isUnset($request->workBenchOpenSpaceModel)) {
  170. @$body['workBenchOpenSpaceModel'] = $request->workBenchOpenSpaceModel;
  171. }
  172. $realHeaders = [];
  173. if (!Utils::isUnset($headers->commonHeaders)) {
  174. $realHeaders = $headers->commonHeaders;
  175. }
  176. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  177. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  178. }
  179. $req = new OpenApiRequest([
  180. 'headers' => $realHeaders,
  181. 'body' => OpenApiUtilClient::parseToMap($body),
  182. ]);
  183. return CreateAndDeliverResponse::fromMap($this->doROARequest('CreateAndDeliver', 'card_1.0', 'HTTP', 'POST', 'AK', '/v1.0/card/instances/createAndDeliver', 'json', $req, $runtime));
  184. }
  185. /**
  186. * @param CreateCardRequest $request
  187. *
  188. * @return CreateCardResponse
  189. */
  190. public function createCard($request)
  191. {
  192. $runtime = new RuntimeOptions([]);
  193. $headers = new CreateCardHeaders([]);
  194. return $this->createCardWithOptions($request, $headers, $runtime);
  195. }
  196. /**
  197. * @param CreateCardRequest $request
  198. * @param CreateCardHeaders $headers
  199. * @param RuntimeOptions $runtime
  200. *
  201. * @return CreateCardResponse
  202. */
  203. public function createCardWithOptions($request, $headers, $runtime)
  204. {
  205. Utils::validateModel($request);
  206. $body = [];
  207. if (!Utils::isUnset($request->callbackRouteKey)) {
  208. @$body['callbackRouteKey'] = $request->callbackRouteKey;
  209. }
  210. if (!Utils::isUnset($request->cardAtUserIds)) {
  211. @$body['cardAtUserIds'] = $request->cardAtUserIds;
  212. }
  213. if (!Utils::isUnset($request->cardData)) {
  214. @$body['cardData'] = $request->cardData;
  215. }
  216. if (!Utils::isUnset($request->cardTemplateId)) {
  217. @$body['cardTemplateId'] = $request->cardTemplateId;
  218. }
  219. if (!Utils::isUnset($request->coFeedOpenSpaceModel)) {
  220. @$body['coFeedOpenSpaceModel'] = $request->coFeedOpenSpaceModel;
  221. }
  222. if (!Utils::isUnset($request->imGroupOpenSpaceModel)) {
  223. @$body['imGroupOpenSpaceModel'] = $request->imGroupOpenSpaceModel;
  224. }
  225. if (!Utils::isUnset($request->imSingleOpenSpaceModel)) {
  226. @$body['imSingleOpenSpaceModel'] = $request->imSingleOpenSpaceModel;
  227. }
  228. if (!Utils::isUnset($request->openDynamicDataConfig)) {
  229. @$body['openDynamicDataConfig'] = $request->openDynamicDataConfig;
  230. }
  231. if (!Utils::isUnset($request->outTrackId)) {
  232. @$body['outTrackId'] = $request->outTrackId;
  233. }
  234. if (!Utils::isUnset($request->privateData)) {
  235. @$body['privateData'] = $request->privateData;
  236. }
  237. if (!Utils::isUnset($request->topOpenSpaceModel)) {
  238. @$body['topOpenSpaceModel'] = $request->topOpenSpaceModel;
  239. }
  240. if (!Utils::isUnset($request->userId)) {
  241. @$body['userId'] = $request->userId;
  242. }
  243. if (!Utils::isUnset($request->userIdType)) {
  244. @$body['userIdType'] = $request->userIdType;
  245. }
  246. if (!Utils::isUnset($request->workBenchOpenSpaceModel)) {
  247. @$body['workBenchOpenSpaceModel'] = $request->workBenchOpenSpaceModel;
  248. }
  249. $realHeaders = [];
  250. if (!Utils::isUnset($headers->commonHeaders)) {
  251. $realHeaders = $headers->commonHeaders;
  252. }
  253. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  254. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  255. }
  256. $req = new OpenApiRequest([
  257. 'headers' => $realHeaders,
  258. 'body' => OpenApiUtilClient::parseToMap($body),
  259. ]);
  260. return CreateCardResponse::fromMap($this->doROARequest('CreateCard', 'card_1.0', 'HTTP', 'POST', 'AK', '/v1.0/card/instances', 'json', $req, $runtime));
  261. }
  262. /**
  263. * @param DeliverCardRequest $request
  264. *
  265. * @return DeliverCardResponse
  266. */
  267. public function deliverCard($request)
  268. {
  269. $runtime = new RuntimeOptions([]);
  270. $headers = new DeliverCardHeaders([]);
  271. return $this->deliverCardWithOptions($request, $headers, $runtime);
  272. }
  273. /**
  274. * @param DeliverCardRequest $request
  275. * @param DeliverCardHeaders $headers
  276. * @param RuntimeOptions $runtime
  277. *
  278. * @return DeliverCardResponse
  279. */
  280. public function deliverCardWithOptions($request, $headers, $runtime)
  281. {
  282. Utils::validateModel($request);
  283. $body = [];
  284. if (!Utils::isUnset($request->coFeedOpenDeliverModel)) {
  285. @$body['coFeedOpenDeliverModel'] = $request->coFeedOpenDeliverModel;
  286. }
  287. if (!Utils::isUnset($request->imGroupOpenDeliverModel)) {
  288. @$body['imGroupOpenDeliverModel'] = $request->imGroupOpenDeliverModel;
  289. }
  290. if (!Utils::isUnset($request->imSingleOpenDeliverModel)) {
  291. @$body['imSingleOpenDeliverModel'] = $request->imSingleOpenDeliverModel;
  292. }
  293. if (!Utils::isUnset($request->openSpaceId)) {
  294. @$body['openSpaceId'] = $request->openSpaceId;
  295. }
  296. if (!Utils::isUnset($request->outTrackId)) {
  297. @$body['outTrackId'] = $request->outTrackId;
  298. }
  299. if (!Utils::isUnset($request->topOpenDeliverModel)) {
  300. @$body['topOpenDeliverModel'] = $request->topOpenDeliverModel;
  301. }
  302. if (!Utils::isUnset($request->workBenchOpenDeliverModel)) {
  303. @$body['workBenchOpenDeliverModel'] = $request->workBenchOpenDeliverModel;
  304. }
  305. $realHeaders = [];
  306. if (!Utils::isUnset($headers->commonHeaders)) {
  307. $realHeaders = $headers->commonHeaders;
  308. }
  309. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  310. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  311. }
  312. $req = new OpenApiRequest([
  313. 'headers' => $realHeaders,
  314. 'body' => OpenApiUtilClient::parseToMap($body),
  315. ]);
  316. return DeliverCardResponse::fromMap($this->doROARequest('DeliverCard', 'card_1.0', 'HTTP', 'POST', 'AK', '/v1.0/card/instances/deliver', 'json', $req, $runtime));
  317. }
  318. /**
  319. * @param RegisterCallbackRequest $request
  320. *
  321. * @return RegisterCallbackResponse
  322. */
  323. public function registerCallback($request)
  324. {
  325. $runtime = new RuntimeOptions([]);
  326. $headers = new RegisterCallbackHeaders([]);
  327. return $this->registerCallbackWithOptions($request, $headers, $runtime);
  328. }
  329. /**
  330. * @param RegisterCallbackRequest $request
  331. * @param RegisterCallbackHeaders $headers
  332. * @param RuntimeOptions $runtime
  333. *
  334. * @return RegisterCallbackResponse
  335. */
  336. public function registerCallbackWithOptions($request, $headers, $runtime)
  337. {
  338. Utils::validateModel($request);
  339. $body = [];
  340. if (!Utils::isUnset($request->apiSecret)) {
  341. @$body['apiSecret'] = $request->apiSecret;
  342. }
  343. if (!Utils::isUnset($request->callbackRouteKey)) {
  344. @$body['callbackRouteKey'] = $request->callbackRouteKey;
  345. }
  346. if (!Utils::isUnset($request->callbackUrl)) {
  347. @$body['callbackUrl'] = $request->callbackUrl;
  348. }
  349. if (!Utils::isUnset($request->forceUpdate)) {
  350. @$body['forceUpdate'] = $request->forceUpdate;
  351. }
  352. $realHeaders = [];
  353. if (!Utils::isUnset($headers->commonHeaders)) {
  354. $realHeaders = $headers->commonHeaders;
  355. }
  356. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  357. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  358. }
  359. $req = new OpenApiRequest([
  360. 'headers' => $realHeaders,
  361. 'body' => OpenApiUtilClient::parseToMap($body),
  362. ]);
  363. return RegisterCallbackResponse::fromMap($this->doROARequest('RegisterCallback', 'card_1.0', 'HTTP', 'POST', 'AK', '/v1.0/card/callbacks/register', 'json', $req, $runtime));
  364. }
  365. /**
  366. * @param UpdateCardRequest $request
  367. *
  368. * @return UpdateCardResponse
  369. */
  370. public function updateCard($request)
  371. {
  372. $runtime = new RuntimeOptions([]);
  373. $headers = new UpdateCardHeaders([]);
  374. return $this->updateCardWithOptions($request, $headers, $runtime);
  375. }
  376. /**
  377. * @param UpdateCardRequest $request
  378. * @param UpdateCardHeaders $headers
  379. * @param RuntimeOptions $runtime
  380. *
  381. * @return UpdateCardResponse
  382. */
  383. public function updateCardWithOptions($request, $headers, $runtime)
  384. {
  385. Utils::validateModel($request);
  386. $body = [];
  387. if (!Utils::isUnset($request->cardData)) {
  388. @$body['cardData'] = $request->cardData;
  389. }
  390. if (!Utils::isUnset($request->cardUpdateOptions)) {
  391. @$body['cardUpdateOptions'] = $request->cardUpdateOptions;
  392. }
  393. if (!Utils::isUnset($request->outTrackId)) {
  394. @$body['outTrackId'] = $request->outTrackId;
  395. }
  396. if (!Utils::isUnset($request->privateData)) {
  397. @$body['privateData'] = $request->privateData;
  398. }
  399. $realHeaders = [];
  400. if (!Utils::isUnset($headers->commonHeaders)) {
  401. $realHeaders = $headers->commonHeaders;
  402. }
  403. if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
  404. @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
  405. }
  406. $req = new OpenApiRequest([
  407. 'headers' => $realHeaders,
  408. 'body' => OpenApiUtilClient::parseToMap($body),
  409. ]);
  410. return UpdateCardResponse::fromMap($this->doROARequest('UpdateCard', 'card_1.0', 'HTTP', 'PUT', 'AK', '/v1.0/card/instances', 'json', $req, $runtime));
  411. }
  412. }