/** * 删除菜单 * * @return boolean */ public function delete() { Wechat::request('GET', self::API_DELETE); return true; }
/** * 获取用户所在的组 * * @param string $openId * * @return integer */ public function getGroup($openId) { $params = array('openid' => $openId); $response = Wechat::request('POST', self::API_GROUP, $params); return $response['groupid']; }
/** * 下载媒体文件 * * @param string $mediaId * @param string $filename * * @return mixed */ public function download($mediaId, $filename = '') { $params = array('media_id' => $mediaId); $contents = Wechat::request('GET', self::API_GET, $params); return $filename ? $contents : file_put_contents($filename, $contents); }
/** * 发送消息 * * @param string $openId * * @return boolean */ public function to($openId) { if (empty($this->message)) { throw new Exception("未设置要发送的消息"); } $this->message->to = $openId; Wechat::request('POST', self::API_MESSAGE_SEND, $this->message->buildForStaff()); return true; }
/** * 批量移动用户 * * @param array $openIds * @param integer $groupId * * @return boolean */ public function moveUsers(array $openIds, $groupId) { $params = array('openid_list' => $openIds, 'to_groupid' => $groupId); Wechat::request('POST', self::API_MEMBER_BATCH_UPDATE, $params); return true; }
/** * 通过code授权 * * @param string $code * * @return array */ protected function authorize($code) { if ($this->authResult) { return $this->authResult; } // 关闭自动加access_token参数 Wechat::autoRequestToken(false); $params = array('appid' => Wechat::getOption('appId'), 'secret' => Wechat::getOption('secret'), 'code' => $code, 'grant_type' => 'authorization_code'); $authResult = Wechat::request('GET', self::API_TOKEN_GET, $params); // 开启自动加access_token参数 Wechat::autoRequestToken(true); //TODO:refresh_token机制 return $this->authResult = $authResult; }