[ 'pageNumber' => $pagination, 'showNumber' => $showNumber ] ]; return Utils::send(Url::$getUsers, $data, '获取用户列表错误', $adminToken); } /** * 获取用户在线状态 * @param array $userIDList 用户ID列表 * @return array */ public function getUsersOnlineStatus(array $userIDList): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$getUsersOnlineStatus, ['userIDList' => $userIDList], '获取用户在线状态错误', $adminToken); } /** * 获取用户在线token详情 * @param array $userIDList 用户ID列表 * @return array */ public function getUsersOnlineTokenDetail(array $userIDList): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$getUsersOnlineTokenDetail, ['userIDList' => $userIDList], '获取用户在线token详情错误', $adminToken); } /** * 获取订阅用户状态 * @return array */ public function getSubscribeUsersStatus(): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$getSubscribeUsersStatus, [], '获取订阅用户状态错误', $adminToken); } /** * 订阅用户状态 * @param string $token 管理员token * @param array $userIDList 用户ID列表 * @return array */ public function subscribeUsersStatus(array $userIDList): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$subscribeUsersStatus, ['userIDList' => $userIDList], '订阅用户状态错误', $adminToken); } /** * 设置全局免打扰 * @param int $globalRecvMsgOpt 全局消息接收选项 * @return array */ public function setGlobalMsgRecvOpt(int $globalRecvMsgOpt): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$setGlobalMsgRecvOpt, ['globalRecvMsgOpt' => $globalRecvMsgOpt], '设置全局免打扰错误', $adminToken); } /** * 修改用户信息 * @param string $userID 用户ID * @param array $data 用户信息 * @return array */ public function updateUserInfo(string $userID, array $data): array|bool { // 获取管理员token $adminToken = Utils::getAdminToken(); $data = array_merge(['userID' => $userID], $data); $data = [ 'userInfo' => $data ]; return Utils::send(Url::$updateUserInfo, $data, '修改用户信息错误', $adminToken); } /** * 搜索通知账号 * @param string $keyword 搜索关键词 * @param int $pagination 页码 * @param int $showNumber 每页数量 * @return array */ public function searchNotificationAccount(string $keyword, int $pagination = 1, int $showNumber = 20): array { $data = [ 'keyword' => $keyword, 'pagination' => [ 'pageNumber' => $pagination, 'showNumber' => $showNumber ] ]; return Utils::send(Url::$searchNotificationAccount, $data, '搜索通知账号错误'); } /** * 添加通知账号 * @param string $userID 用户ID * @param string $nickname 昵称 * @param string $faceURL 头像 * @param int $gender 性别 * @param string $phoneNumber 手机号 * @param string $birth 生日 * @param string $email 邮箱 * @param string $ex 扩展字段 * @return array */ public function addNotificationAccount(string $userID, string $nickname = '', string $faceURL = '', \support\OpenImSdk\Enum\appMangerLevel $appMangerLevel = \support\OpenImSdk\Enum\appMangerLevel::Notify): array { $data = [ 'userID' => $userID, 'nickname' => $nickname, 'faceURL' => $faceURL, 'appMangerLevel' => $appMangerLevel->value, ]; return Utils::send(Url::$addNotificationAccount, $data, '添加通知账号错误'); } /** * 更新通知账号 * @param string $userID 用户ID * @param string $nickname 昵称 * @param string $faceURL 头像 * @param int $gender 性别 * @param string $phoneNumber 手机号 * @param string $birth 生日 * @param string $email 邮箱 * @param string $ex 扩展字段 * @return array */ public function updateNotificationAccount(string $userID, string $nickname = '', string $faceURL = ''): array { // 获取管理员token $data = [ 'userID' => $userID, 'nickname' => $nickname, 'faceURL' => $faceURL ]; return Utils::send(Url::$updateNotificationAccount, $data, '更新通知账号错误'); } /** * 检查列表账户注册状态 * @param array $checkUserIDList 用户ID列表 * @return array */ public function accountCheck(array $checkUserIDList): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$accountCheck, ['checkUserIDList' => $checkUserIDList], '检查列表账户注册状态错误', $adminToken); } /** * 获取所有用户uid列表 * @return array */ public function getAllUsersUid($page=1,$limit=100): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$getAllUsersUid, ['pagination'=>['pageNumber'=>$page,"showNumber"=>$limit]], '获取所有用户uid列表错误', $adminToken); } /** * 获取自己的信息 * @param string $userID 用户ID * @return array */ public function getSelfUserInfo(string $userID): array { // 获取管理员token $userToken = Utils::getUserToken($userID); return Utils::send(Url::$getSelfUserInfo, ['userID' => $userID], '获取自己的信息错误', $userToken); } /** * 获取用户信息 * @param array $userIDList 用户ID列表 * @return array */ public function getUsersInfo(array $userIDList): array { // 获取管理员token $adminToken = Utils::getAdminToken(); return Utils::send(Url::$getUsersInfo, ['userIDList' => $userIDList], '获取用户信息错误', $adminToken); } //Header // //Header Name Example Value Required Type Description //operationID 1646445464564 Required string Used for global traceability, suggested as a unique timestamp per request //token eyJhbxxxx3Xs Required string Admin token //Field Name Required Type Description //users Required array List of users //users.userID Required string User ID //users.nickname Required string User nickname //users.faceURL Required string User avatar URL /** * 用户注册 * @param string $userID 用户ID * @param string $nickname 昵称 * @param string $faceURL 头像地址 * @return array */ public function userRegister(string $userID, string $nickname = '', string $faceURL = ''): array|bool { // 获取管理员token $adminToken = Utils::getAdminToken(); $data = [ 'users' => [ [ 'userID' => $userID, 'nickname' => $nickname, 'faceURL' => $faceURL ] ] ]; return Utils::send(Url::$userRegister, $data, '注册IM错误', $adminToken); } }