usersig("administrator"); // 获取配置信息 $config = config("tencent_im"); $url = "?sdkappid=".$config["sdkappid"]; $url .= "&identifier=administrator"; $url .= "&usersig=".$usersig; $url .= "&random=".$random; $url .= "&contenttype=json"; $this->url = $url; } /** * 获取usersig签名-具体操作 */ private function usersig($user_id) { // 获取配置信息 $config = config("tencent_im"); $usersigObj = new getusersig($config["sdkappid"],$config["key"]); $usersig = $usersigObj->genUserSig($user_id); return $usersig; } /** * 获取房间用户 */ public function getRoomUser($params=[]) { $result = [ 'status' => 1, 'msg' => '获取成功', 'data' => [], ]; try { $partyArr = isset($params['party_ids']) ? $params['party_ids'] : []; $url = "https://console.tim.qq.com/v4/group_open_avchatroom_http_svc/get_members".$this->url; $tencentObj = new tencentim($url); //获取用户 ["57","62","63","105","106","107","108","109","116","119"] $memberList = []; if(!empty($partyArr)) { foreach ($partyArr as $key => $value) { $data["GroupId"] = (string)$value; $tencentRes = $tencentObj->toSend($data); if (isset($tencentRes['ActionStatus']) && $tencentRes['ActionStatus'] == 'OK') { if (isset($tencentRes['MemberList']) && !empty($tencentRes['MemberList'])) { foreach ($tencentRes['MemberList'] as $ukey => $uval) { $memberList[$value]['member_list'][] = [ 'avatar' => $uval['Avatar'], 'user_id'=> $uval['Member_Account'], 'nickname' => $uval['NickName'], ]; } $memberList[$value]['online_num'] = count($memberList[$value]['member_list']); } } } } $result['data'] = $memberList; } catch (\Exception $e) { $result['status'] = 0; $result['msg'] = $e->getMessage(); } return $result; } }