diff options
Diffstat (limited to 'OpenSim/Server/Handlers')
-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(); |