123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- <?php
- // +----------------------------------------------------------------------
- // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
- // +----------------------------------------------------------------------
- // | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
- // +----------------------------------------------------------------------
- // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
- // +----------------------------------------------------------------------
- // | Author: CRMEB Team <admin@crmeb.com>
- // +----------------------------------------------------------------------
- namespace crmeb\services\wechat\groupChat;
- use EasyWeChat\Kernel\Exceptions\InvalidConfigException;
- use EasyWeChat\Work\ExternalContact\Client as WorkClient;
- use GuzzleHttp\Exception\GuzzleException;
- /**
- * 客户群聊配置
- * Class Client
- * @package crmeb\services\wechat\groupChat
- */
- class Client extends WorkClient
- {
- /**
- * 配置客户群进群方式
- * @param string $roomName 自动建群的群名前缀
- * @param array $chatIdList 使用该配置的客户群ID列表
- * @param string $state 企业自定义的state参数
- * @param int $autoCreateRoom 当群满了后,是否自动新建群。0-否;1-是。 默认为1
- * @param string|null $remark 联系方式的备注信息
- * @param int $scene 场景。1 - 群的小程序插件 2 - 群的二维码插件
- * @param int $roomBaseId 自动建群的群起始序号
- * @return array
- * @throws GuzzleException
- * @throws InvalidConfigException
- */
- public function addJoinWay(string $roomName, array $chatIdList, string $state, int $autoCreateRoom = 1, int $roomBaseId = 1, string $remark = null, int $scene = 2)
- {
- $data = [
- 'scene' => $scene,
- 'remark' => $remark,
- 'chat_id_list' => $chatIdList,
- 'auto_create_room' => $autoCreateRoom,
- 'room_base_name' => $roomName,
- 'room_base_id' => $roomBaseId,
- 'state' => $state
- ];
- return $this->httpPostJson('cgi-bin/externalcontact/groupchat/add_join_way', $data);
- }
- /**
- * 更新客户群进群方式配置
- * @param string $configId
- * @param string $roomBaseName
- * @param array $chatIdList
- * @param string $state
- * @param int $autoCreateRoom
- * @param string|null $remark
- * @param int $scene
- * @param int $roomBaseId
- * @return array
- * @throws GuzzleException
- * @throws InvalidConfigException
- */
- public function updateJoinWay(string $configId, string $roomBaseName, array $chatIdList, string $state, int $autoCreateRoom = 1, int $roomBaseId = 1, string $remark = null, int $scene = 2)
- {
- $data = [
- 'config_id' => $configId,
- 'scene' => $scene,
- 'remark' => $remark,
- 'auto_create_room' => $autoCreateRoom,
- 'room_base_name' => $roomBaseName,
- 'room_base_id' => $roomBaseId,
- 'chat_id_list' => $chatIdList,
- 'state' => $state,
- ];
- return $this->httpPostJson('cgi-bin/externalcontact/groupchat/update_join_way', $data);
- }
- /**
- * 获取客户群进群方式配置
- * @param string $configId
- * @return array
- * @throws GuzzleException
- * @throws InvalidConfigException
- */
- public function getJoinWay(string $configId)
- {
- return $this->httpPostJson('cgi-bin/externalcontact/groupchat/get_join_way', ['config_id' => $configId]);
- }
- /**
- * 删除客户群进群方式配置
- * @param string $configId
- * @return array
- * @throws GuzzleException
- * @throws InvalidConfigException
- */
- public function deleteJoinWay(string $configId)
- {
- return $this->httpPostJson('cgi-bin/externalcontact/groupchat/del_join_way', ['config_id' => $configId]);
- }
- }
|