diff options
author | Diva Canto | 2011-06-07 19:36:04 -0700 |
---|---|---|
committer | Diva Canto | 2011-06-07 19:36:04 -0700 |
commit | 3307db5d4aedec5cc31541e9a28a95abdd4999d0 (patch) | |
tree | 86d7b644e3b2cb1c77fa6e2b5c9ea7223e8e64f8 /OpenSim/Server | |
parent | This makes the display names work better for foreigners (diff) | |
download | opensim-SC_OLD-3307db5d4aedec5cc31541e9a28a95abdd4999d0.zip opensim-SC_OLD-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.gz opensim-SC_OLD-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.bz2 opensim-SC_OLD-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.xz |
This hopefully fixes all issues with online/offline notifications across grids. http://opensimulator.org/mantis/view.php?id=5528
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs index 2022d8a..72a4aea 100644 --- a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs +++ b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs | |||
@@ -237,10 +237,20 @@ namespace OpenSim.Server.Handlers.Hypergrid | |||
237 | bool online = false; | 237 | bool online = false; |
238 | bool.TryParse(requestData["online"].ToString(), out online); | 238 | bool.TryParse(requestData["online"].ToString(), out online); |
239 | 239 | ||
240 | hash["result"] = "true"; | ||
241 | |||
242 | // let's spawn a thread for this, because it may take a long time... | 240 | // let's spawn a thread for this, because it may take a long time... |
243 | Util.FireAndForget(delegate { m_HomeUsersService.StatusNotification(ids, userID, online); }); | 241 | List<UUID> friendsOnline = m_HomeUsersService.StatusNotification(ids, userID, online); |
242 | if (friendsOnline.Count > 0) | ||
243 | { | ||
244 | int i = 0; | ||
245 | foreach (UUID id in friendsOnline) | ||
246 | { | ||
247 | hash["friend_" + i.ToString()] = id.ToString(); | ||
248 | i++; | ||
249 | } | ||
250 | } | ||
251 | else | ||
252 | hash["result"] = "No Friends Online"; | ||
253 | |||
244 | } | 254 | } |
245 | 255 | ||
246 | XmlRpcResponse response = new XmlRpcResponse(); | 256 | XmlRpcResponse response = new XmlRpcResponse(); |