OapiImChatScencegroupInteractivecardSendRequest.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <?php
  2. /**
  3. * dingtalk API: dingtalk.oapi.im.chat.scencegroup.interactivecard.send request
  4. *
  5. * @author auto create
  6. * @since 1.0, 2021.01.11
  7. */
  8. class OapiImChatScencegroupInteractivecardSendRequest
  9. {
  10. /**
  11. * 卡片模板内容替换参数-多媒体类型
  12. **/
  13. private $cardMediaidParamMap;
  14. /**
  15. * 卡片模板内容替换参数-普通文本类型
  16. **/
  17. private $cardParamMap;
  18. /**
  19. * 卡片模板ID
  20. **/
  21. private $cardTemplateId;
  22. /**
  23. * 唯一标示卡片的外部编码
  24. **/
  25. private $outTrackId;
  26. /**
  27. * 接收卡片的人的userId
  28. **/
  29. private $receiverUseridList;
  30. /**
  31. * 用于发送卡片的机器人编码,与场景群模板中的机器人编码保持一致
  32. **/
  33. private $robotCode;
  34. /**
  35. * 接收卡片的群的openConversationId
  36. **/
  37. private $targetOpenConversationId;
  38. private $apiParas = array();
  39. public function setCardMediaidParamMap($cardMediaidParamMap)
  40. {
  41. $this->cardMediaidParamMap = $cardMediaidParamMap;
  42. $this->apiParas["card_mediaid_param_map"] = $cardMediaidParamMap;
  43. }
  44. public function getCardMediaidParamMap()
  45. {
  46. return $this->cardMediaidParamMap;
  47. }
  48. public function setCardParamMap($cardParamMap)
  49. {
  50. $this->cardParamMap = $cardParamMap;
  51. $this->apiParas["card_param_map"] = $cardParamMap;
  52. }
  53. public function getCardParamMap()
  54. {
  55. return $this->cardParamMap;
  56. }
  57. public function setCardTemplateId($cardTemplateId)
  58. {
  59. $this->cardTemplateId = $cardTemplateId;
  60. $this->apiParas["card_template_id"] = $cardTemplateId;
  61. }
  62. public function getCardTemplateId()
  63. {
  64. return $this->cardTemplateId;
  65. }
  66. public function setOutTrackId($outTrackId)
  67. {
  68. $this->outTrackId = $outTrackId;
  69. $this->apiParas["out_track_id"] = $outTrackId;
  70. }
  71. public function getOutTrackId()
  72. {
  73. return $this->outTrackId;
  74. }
  75. public function setReceiverUseridList($receiverUseridList)
  76. {
  77. $this->receiverUseridList = $receiverUseridList;
  78. $this->apiParas["receiver_userid_list"] = $receiverUseridList;
  79. }
  80. public function getReceiverUseridList()
  81. {
  82. return $this->receiverUseridList;
  83. }
  84. public function setRobotCode($robotCode)
  85. {
  86. $this->robotCode = $robotCode;
  87. $this->apiParas["robot_code"] = $robotCode;
  88. }
  89. public function getRobotCode()
  90. {
  91. return $this->robotCode;
  92. }
  93. public function setTargetOpenConversationId($targetOpenConversationId)
  94. {
  95. $this->targetOpenConversationId = $targetOpenConversationId;
  96. $this->apiParas["target_open_conversation_id"] = $targetOpenConversationId;
  97. }
  98. public function getTargetOpenConversationId()
  99. {
  100. return $this->targetOpenConversationId;
  101. }
  102. public function getApiMethodName()
  103. {
  104. return "dingtalk.oapi.im.chat.scencegroup.interactivecard.send";
  105. }
  106. public function getApiParas()
  107. {
  108. return $this->apiParas;
  109. }
  110. public function check()
  111. {
  112. RequestCheckUtil::checkNotNull($this->cardTemplateId,"cardTemplateId");
  113. RequestCheckUtil::checkNotNull($this->outTrackId,"outTrackId");
  114. RequestCheckUtil::checkMaxListSize($this->receiverUseridList,999,"receiverUseridList");
  115. RequestCheckUtil::checkNotNull($this->robotCode,"robotCode");
  116. RequestCheckUtil::checkNotNull($this->targetOpenConversationId,"targetOpenConversationId");
  117. }
  118. public function putOtherTextParam($key, $value) {
  119. $this->apiParas[$key] = $value;
  120. $this->$key = $value;
  121. }
  122. }