ContactWayClient.php 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace app\framework\EasyWechat\Work;
  3. use EasyWeChat\Work\ExternalContact\ContactWayClient as BaseClient;
  4. class ContactWayClient extends BaseClient
  5. {
  6. /*
  7. * 删除进群码
  8. */
  9. public function deleteGroupCode(string $config_id)
  10. {
  11. $params = [
  12. 'config_id' => $config_id,
  13. ];
  14. return $this->httpPostJson('cgi-bin/externalcontact/groupchat/del_join_way', $params);
  15. }
  16. /*
  17. * 获取进群码
  18. */
  19. public function getGroupCode(string $config_id)
  20. {
  21. $params = [
  22. 'config_id' => $config_id,
  23. ];
  24. return $this->httpPostJson('cgi-bin/externalcontact/groupchat/get_join_way', $params);
  25. }
  26. /*
  27. * 添加进群码
  28. */
  29. public function addGroupCode(array $data = [])
  30. {
  31. $params = [
  32. 'scene' => isset($data['scene']) ? $data['scene'] : 2,
  33. 'remark' => isset($data['remark']) ? $data['remark'] : '',
  34. 'auto_create_room' => isset($data['auto_create_room']) ? $data['auto_create_room'] : 1,
  35. 'chat_id_list' => $data['chat_id_list'],
  36. ];
  37. if (isset($data['state'])) {
  38. $params['state'] = $data['state'];
  39. }
  40. if ($params['auto_create_room']) {
  41. $params['room_base_name'] = isset($data['room_base_name']) ? trim($data['room_base_name']) : '客户群';
  42. $params['room_base_id'] = isset($data['room_base_id']) ? intval($data['room_base_id']) : '1';
  43. }
  44. return $this->httpPostJson('cgi-bin/externalcontact/groupchat/add_join_way', $params);
  45. }
  46. /**
  47. * 更新进群码
  48. * @param array $data
  49. * @return array|\EasyWeChat\Kernel\Support\Collection|object|\Psr\Http\Message\ResponseInterface|string
  50. * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException
  51. * @throws \GuzzleHttp\Exception\GuzzleException
  52. */
  53. public function editGroupCode(array $data = [])
  54. {
  55. $params = [
  56. 'config_id' => $data['config_id'],
  57. 'scene' => isset($data['scene']) ? $data['scene'] : 2,
  58. 'remark' => isset($data['remark']) ? $data['remark'] : '',
  59. 'auto_create_room' => isset($data['auto_create_room']) ? $data['auto_create_room'] : 1,
  60. 'chat_id_list' => $data['chat_id_list'],
  61. ];
  62. if (isset($data['state'])) {
  63. $params['state'] = $data['state'];
  64. }
  65. if ($params['auto_create_room']) {
  66. $params['room_base_name'] = isset($data['room_base_name']) ? trim($data['room_base_name']) : '客户群';
  67. $params['room_base_id'] = isset($data['room_base_id']) ? intval($data['room_base_id']) : '1';
  68. }
  69. return $this->httpPostJson('cgi-bin/externalcontact/groupchat/update_join_way', $params);
  70. }
  71. }