263 lines
8.5 KiB
PHP
263 lines
8.5 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace support\OpenImSdk\Api;
|
||
|
|
|
||
|
|
use support\OpenImSdk\Core\Url;
|
||
|
|
use support\OpenImSdk\Core\Utils;
|
||
|
|
|
||
|
|
class User
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* 获取用户列表
|
||
|
|
* @param int $pagination 页码
|
||
|
|
* @param int $showNumber 每页数量
|
||
|
|
* @return array
|
||
|
|
*/
|
||
|
|
public function getUsers(int $pagination = 1, int $showNumber = 20): array
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = [
|
||
|
|
'pagination' => [
|
||
|
|
'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
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = array_merge(['userID' => $userID], $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
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = [
|
||
|
|
'keyword' => $keyword,
|
||
|
|
'pagination' => [
|
||
|
|
'pageNumber' => $pagination,
|
||
|
|
'showNumber' => $showNumber
|
||
|
|
]
|
||
|
|
];
|
||
|
|
return Utils::send(Url::$searchNotificationAccount, $data, '搜索通知账号错误', $adminToken);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 添加通知账号
|
||
|
|
* @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 = '', int $gender = 1, string $phoneNumber = '', string $birth = '', string $email = '', string $ex = ''): array
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = [
|
||
|
|
'userID' => $userID,
|
||
|
|
'nickname' => $nickname,
|
||
|
|
'faceURL' => $faceURL,
|
||
|
|
'gender' => $gender,
|
||
|
|
'phoneNumber' => $phoneNumber,
|
||
|
|
'birth' => $birth,
|
||
|
|
'email' => $email,
|
||
|
|
'ex' => $ex
|
||
|
|
];
|
||
|
|
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 = '', int $gender = 1, string $phoneNumber = '', string $birth = '', string $email = '', string $ex = ''): array
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = [
|
||
|
|
'userID' => $userID,
|
||
|
|
'nickname' => $nickname,
|
||
|
|
'faceURL' => $faceURL,
|
||
|
|
'gender' => $gender,
|
||
|
|
'phoneNumber' => $phoneNumber,
|
||
|
|
'birth' => $birth,
|
||
|
|
'email' => $email,
|
||
|
|
'ex' => $ex
|
||
|
|
];
|
||
|
|
return Utils::send(Url::$updateNotificationAccount, $data, '更新通知账号错误', $adminToken);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 检查列表账户注册状态
|
||
|
|
* @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
|
||
|
|
{
|
||
|
|
// 获取管理员token
|
||
|
|
$adminToken = Utils::getAdminToken();
|
||
|
|
$data = [
|
||
|
|
'users' => [
|
||
|
|
[
|
||
|
|
'userID' => $userID,
|
||
|
|
'nickname' => $nickname,
|
||
|
|
'faceURL' => $faceURL
|
||
|
|
]
|
||
|
|
]
|
||
|
|
];
|
||
|
|
return Utils::send(Url::$userRegister, $data, '注册IM错误', $adminToken);
|
||
|
|
}
|
||
|
|
}
|