aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Grid/UserServer/UserLoginService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Grid/UserServer/UserLoginService.cs')
-rw-r--r--OpenSim/Grid/UserServer/UserLoginService.cs39
1 files changed, 21 insertions, 18 deletions
diff --git a/OpenSim/Grid/UserServer/UserLoginService.cs b/OpenSim/Grid/UserServer/UserLoginService.cs
index 1523f81..bbef4b2 100644
--- a/OpenSim/Grid/UserServer/UserLoginService.cs
+++ b/OpenSim/Grid/UserServer/UserLoginService.cs
@@ -30,12 +30,10 @@ using System;
30using System.Collections; 30using System.Collections;
31using System.Net; 31using System.Net;
32using Nwc.XmlRpc; 32using Nwc.XmlRpc;
33using OpenSim.Framework.Data;
34using OpenSim.Framework.UserManagement;
35using OpenSim.Framework;
36using OpenSim.Framework;
37using OpenSim.Framework; 33using OpenSim.Framework;
38using OpenSim.Framework.Console; 34using OpenSim.Framework.Console;
35using OpenSim.Framework.Data;
36using OpenSim.Framework.UserManagement;
39 37
40namespace OpenSim.Grid.UserServer 38namespace OpenSim.Grid.UserServer
41{ 39{
@@ -58,18 +56,24 @@ namespace OpenSim.Grid.UserServer
58 { 56 {
59 // Load information from the gridserver 57 // Load information from the gridserver
60 RegionProfileData SimInfo = new RegionProfileData(); 58 RegionProfileData SimInfo = new RegionProfileData();
61 SimInfo = SimInfo.RequestSimProfileData(theUser.currentAgent.currentHandle, m_config.GridServerURL, m_config.GridSendKey, m_config.GridRecvKey); 59 SimInfo =
60 SimInfo.RequestSimProfileData(theUser.currentAgent.currentHandle, m_config.GridServerURL,
61 m_config.GridSendKey, m_config.GridRecvKey);
62 62
63 // Customise the response 63 // Customise the response
64 // Home Location 64 // Home Location
65 response.Home = "{'region_handle':[r" + (SimInfo.regionLocX * 256).ToString() + ",r" + (SimInfo.regionLocY * 256).ToString() + "], " + 65 response.Home = "{'region_handle':[r" + (SimInfo.regionLocX*256).ToString() + ",r" +
66 "'position':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " + 66 (SimInfo.regionLocY*256).ToString() + "], " +
67 "'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}"; 67 "'position':[r" + theUser.homeLocation.X.ToString() + ",r" +
68 theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " +
69 "'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" +
70 theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}";
68 71
69 // Destination 72 // Destination
70 MainLog.Instance.Verbose("CUSTOMISERESPONSE: Region X: " + SimInfo.regionLocX + "; Region Y: " + SimInfo.regionLocY); 73 MainLog.Instance.Verbose("CUSTOMISERESPONSE: Region X: " + SimInfo.regionLocX + "; Region Y: " +
74 SimInfo.regionLocY);
71 response.SimAddress = Util.GetHostFromDNS(SimInfo.serverIP).ToString(); 75 response.SimAddress = Util.GetHostFromDNS(SimInfo.serverIP).ToString();
72 response.SimPort = (Int32)SimInfo.serverPort; 76 response.SimPort = (Int32) SimInfo.serverPort;
73 response.RegionX = SimInfo.regionLocX; 77 response.RegionX = SimInfo.regionLocX;
74 response.RegionY = SimInfo.regionLocY; 78 response.RegionY = SimInfo.regionLocY;
75 79
@@ -87,7 +91,7 @@ namespace OpenSim.Grid.UserServer
87 SimParams["firstname"] = theUser.username; 91 SimParams["firstname"] = theUser.username;
88 SimParams["lastname"] = theUser.surname; 92 SimParams["lastname"] = theUser.surname;
89 SimParams["agent_id"] = theUser.UUID.ToString(); 93 SimParams["agent_id"] = theUser.UUID.ToString();
90 SimParams["circuit_code"] = (Int32)Convert.ToUInt32(response.CircuitCode); 94 SimParams["circuit_code"] = (Int32) Convert.ToUInt32(response.CircuitCode);
91 SimParams["startpos_x"] = theUser.currentAgent.currentPos.X.ToString(); 95 SimParams["startpos_x"] = theUser.currentAgent.currentPos.X.ToString();
92 SimParams["startpos_y"] = theUser.currentAgent.currentPos.Y.ToString(); 96 SimParams["startpos_y"] = theUser.currentAgent.currentPos.Y.ToString();
93 SimParams["startpos_z"] = theUser.currentAgent.currentPos.Z.ToString(); 97 SimParams["startpos_z"] = theUser.currentAgent.currentPos.Z.ToString();
@@ -107,21 +111,20 @@ namespace OpenSim.Grid.UserServer
107 XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams); 111 XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams);
108 XmlRpcResponse GridResp = GridReq.Send(SimInfo.httpServerURI, 6000); 112 XmlRpcResponse GridResp = GridReq.Send(SimInfo.httpServerURI, 6000);
109 } 113 }
110 catch( WebException e ) 114 catch (WebException e)
111 { 115 {
112 switch( e.Status ) 116 switch (e.Status)
113 { 117 {
114 case WebExceptionStatus.Timeout: 118 case WebExceptionStatus.Timeout:
115 //TODO: Send him to nearby or default region instead 119 //TODO: Send him to nearby or default region instead
116 MainLog.Instance.Verbose("Unable to connect to " + SimInfo.regionName + " (" + SimInfo.serverURI + ")"); 120 MainLog.Instance.Verbose("Unable to connect to " + SimInfo.regionName + " (" + SimInfo.serverURI +
121 ")");
117 break; 122 break;
118 123
119 default: 124 default:
120 throw; 125 throw;
121 } 126 }
122 } 127 }
123 } 128 }
124 } 129 }
125} 130} \ No newline at end of file
126
127