aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Grid/UserServer/UserManager.cs
diff options
context:
space:
mode:
authorTeravus Ovares2008-01-20 23:08:50 +0000
committerTeravus Ovares2008-01-20 23:08:50 +0000
commita3851b3812aae6221714b1e61656d0853fce7124 (patch)
tree8867b4d6c433b0230f276f88a95625695fb71390 /OpenSim/Grid/UserServer/UserManager.cs
parentGraceful failure of teleport to unavailable regions might actually work now. (diff)
downloadopensim-SC-a3851b3812aae6221714b1e61656d0853fce7124.zip
opensim-SC-a3851b3812aae6221714b1e61656d0853fce7124.tar.gz
opensim-SC-a3851b3812aae6221714b1e61656d0853fce7124.tar.bz2
opensim-SC-a3851b3812aae6221714b1e61656d0853fce7124.tar.xz
* 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>
Diffstat (limited to 'OpenSim/Grid/UserServer/UserManager.cs')
-rw-r--r--OpenSim/Grid/UserServer/UserManager.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/OpenSim/Grid/UserServer/UserManager.cs b/OpenSim/Grid/UserServer/UserManager.cs
index 03b1fbc..3f2aa5b 100644
--- a/OpenSim/Grid/UserServer/UserManager.cs
+++ b/OpenSim/Grid/UserServer/UserManager.cs
@@ -317,6 +317,43 @@ namespace OpenSim.Grid.UserServer
317 return ProfileToXmlRPCResponse(userProfile); 317 return ProfileToXmlRPCResponse(userProfile);
318 } 318 }
319 319
320 public XmlRpcResponse XmlRPCLogOffUserMethodUUID(XmlRpcRequest request)
321 {
322 XmlRpcResponse response = new XmlRpcResponse();
323 Hashtable requestData = (Hashtable)request.Params[0];
324
325
326 UserProfileData userProfile;
327
328 if (requestData.Contains("avatar_uuid"))
329 {
330 try
331 {
332 LLUUID userUUID = new LLUUID((string)requestData["avatar_uuid"]);
333 LLUUID RegionID = new LLUUID((string)requestData["region_uuid"]);
334 ulong regionhandle = (ulong)Convert.ToInt64((string)requestData["region_handle"]);
335 float posx = (float)Convert.ToDecimal((string)requestData["region_pos_x"]);
336 float posy = (float)Convert.ToDecimal((string)requestData["region_pos_y"]);
337 float posz = (float)Convert.ToDecimal((string)requestData["region_pos_z"]);
338
339 LogOffUser(userUUID, RegionID, regionhandle, posx, posy, posz);
340 }
341 catch (FormatException)
342 {
343 OpenSim.Framework.Console.MainLog.Instance.Warn("LOGOUT", "Error in Logout XMLRPC Params");
344 return response;
345 }
346
347 }
348 else
349 {
350 return CreateUnknownUserErrorResponse();
351 }
352
353
354 return response;
355 }
356
320 #endregion 357 #endregion
321 358
322 public override UserProfileData SetupMasterUser(string firstName, string lastName) 359 public override UserProfileData SetupMasterUser(string firstName, string lastName)