GTUserApi.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. require_once(dirname(__FILE__) . '/' . 'GTBaseApi.php');
  3. /**
  4. * 用户相关api,官网文档路径:http://docs.getui.com/getui/server/rest_v2/user/
  5. **/
  6. class GTUserApi extends GTBaseApi
  7. {
  8. public function __construct($gtClient){
  9. $this->gtClient = $gtClient;
  10. }
  11. //鉴权
  12. function auth($params)
  13. {
  14. return $this->post("/auth", $params->getApiParam());
  15. }
  16. //关闭鉴权,如果不传入token,则关闭该gtClient的token
  17. function closeAuth($params)
  18. {
  19. if($params != null){
  20. return $this->delete("/auth/" . $params, null);
  21. }else{
  22. return $this->delete("/auth/" . $this->gtClient->getAuthToken(), null);
  23. }
  24. }
  25. //用户绑定别名
  26. function bindAlias($params)
  27. {
  28. return $this->post("/user/alias", $params->getApiParam());
  29. }
  30. //cid查别名
  31. function queryAliasByCid($params)
  32. {
  33. return $this->get("/user/alias/cid/" . $params, null);
  34. }
  35. //别名查cid
  36. function queryCidByAlias($params)
  37. {
  38. return $this->get("/user/cid/alias/" . $params, null);
  39. }
  40. //解绑别名cid
  41. function unbindAlias($params)
  42. {
  43. return $this->delete("/user/alias", $params->getApiParam());
  44. }
  45. //解绑别名下所有cid
  46. function unbindAllAlias($params)
  47. {
  48. return $this->delete("/user/alias/" . $params, null);
  49. }
  50. //一个用户绑定一批标签,此操作为覆盖操作,会删除历史绑定的标签
  51. function setTagForCid($params)
  52. {
  53. return $this->post("/user/custom_tag/cid/" . $params->getCid(), $params->getApiParam());
  54. }
  55. //根据cid查询用户标签列表
  56. function queryUserTag($params)
  57. {
  58. return $this->get("/user/custom_tag/cid/" . $params, null);
  59. }
  60. //一批用户绑定一个标签
  61. function batchModifyTagForBatchCid($params)
  62. {
  63. return $this->put("/user/custom_tag/batch/" . $params->getCustomTag(), $params->getApiParam());
  64. }
  65. //解绑标签
  66. function unbindTag($params)
  67. {
  68. return $this->delete("/user/custom_tag/batch/" . $params->getCustomTag(), $params->getApiParam());
  69. }
  70. //将单个或多个用户加入黑名单,对于黑名单用户在推送过程中会被过滤掉
  71. //cid:用户标识,多个以英文逗号隔开,一次最多传200个
  72. function addBlackUser($params)
  73. {
  74. return $this->post("/user/black/cid/" . implode(",", $params), null);
  75. }
  76. //查询用户状态
  77. //cid:用户标识,多个以英文逗号隔开,一次最多传200个
  78. function queryUserStatus($params)
  79. {
  80. return $this->get("/user/status/" . implode(",", $params), null);
  81. }
  82. //将单个cid或多个cid用户移出黑名单,对于黑名单用户在推送过程中会被过滤掉的,不会给黑名单用户推送消息
  83. //cid:用户标识,多个以英文逗号隔开,一次最多传200个
  84. function removeBlackUser($params)
  85. {
  86. return $this->delete("/user/black/cid/" . implode(",", $params), null);
  87. }
  88. //设置角标
  89. function setBadge($params)
  90. {
  91. return $this->post("/user/badge/cid/" . implode(",", $params->getCids()), $params->getApiParam());
  92. }
  93. //通过指定查询条件来查询满足条件的用户数量
  94. function queryUserCount($params)
  95. {
  96. return $this->post("/user/count", $params->getApiParam());
  97. }
  98. }