/** * 获取所有在线用户 账号列表 * * 无参数 * * 返回所有在线用户列表 */ public function doOnlineUsers() { $clientList = Muser::getOnlineUsers(); if (false === $clientList) { return false; } $this->_success($clientList); }
/** * 存储用户到在线列表 * @param int $client_id * @param string $clientName */ public static function addUserToOnlineList($clientId, $clientName) { $key = Storekey::USER_ONLINE_LIST; // 获取所有所有在线用户clientid-------------- $allOnlineClientId = Gateway::getOnlineStatus(); //获取存储中在线用户列表 $clientList = Muser::getOnlineUsers(); if (isset($clientList[$clientId])) { return true; } //是否允许多用户登录,剔除用户的clientid if (\Config\St\Status::NOT_ALLOW_CLIENTS) { self::notAllowMoreClient($clientList, $clientName); } // 将存储中不在线用户删除 self::deleteOfflineUser($clientList, $allOnlineClientId); // 添加 时间默认是一天 if (RedisModel::hashSet('webChat', $key, $clientId, $clientName)) { return true; } return false; }