* Added hooks for logout to all IUserService and all that implement it.

* Added a Logout message with a name on the console
* Added a *fixme* message to figure out why the current agent session is null
* After updating you may notice that there's a login <user> and also a logout<user>
This commit is contained in:
Teravus Ovares
2008-01-20 23:08:50 +00:00
parent 59d7165f40
commit a3851b3812
15 changed files with 135 additions and 27 deletions

View File

@@ -317,6 +317,43 @@ namespace OpenSim.Grid.UserServer
return ProfileToXmlRPCResponse(userProfile);
}
public XmlRpcResponse XmlRPCLogOffUserMethodUUID(XmlRpcRequest request)
{
XmlRpcResponse response = new XmlRpcResponse();
Hashtable requestData = (Hashtable)request.Params[0];
UserProfileData userProfile;
if (requestData.Contains("avatar_uuid"))
{
try
{
LLUUID userUUID = new LLUUID((string)requestData["avatar_uuid"]);
LLUUID RegionID = new LLUUID((string)requestData["region_uuid"]);
ulong regionhandle = (ulong)Convert.ToInt64((string)requestData["region_handle"]);
float posx = (float)Convert.ToDecimal((string)requestData["region_pos_x"]);
float posy = (float)Convert.ToDecimal((string)requestData["region_pos_y"]);
float posz = (float)Convert.ToDecimal((string)requestData["region_pos_z"]);
LogOffUser(userUUID, RegionID, regionhandle, posx, posy, posz);
}
catch (FormatException)
{
OpenSim.Framework.Console.MainLog.Instance.Warn("LOGOUT", "Error in Logout XMLRPC Params");
return response;
}
}
else
{
return CreateUnknownUserErrorResponse();
}
return response;
}
#endregion
public override UserProfileData SetupMasterUser(string firstName, string lastName)