diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs index ebd9a72..5a9b452 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/PresenceModule.cs | |||
@@ -35,6 +35,7 @@ using OpenMetaverse; | |||
35 | using OpenSim.Framework; | 35 | using OpenSim.Framework; |
36 | using OpenSim.Region.Framework.Interfaces; | 36 | using OpenSim.Region.Framework.Interfaces; |
37 | using OpenSim.Region.Framework.Scenes; | 37 | using OpenSim.Region.Framework.Scenes; |
38 | using GridRegion = OpenSim.Services.Interfaces.GridRegion; | ||
38 | 39 | ||
39 | namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | 40 | namespace OpenSim.Region.CoreModules.Avatar.InstantMessage |
40 | { | 41 | { |
@@ -171,7 +172,10 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
171 | { | 172 | { |
172 | // TODO this is the old messaging-server protocol; only the regionHandle is available. | 173 | // TODO this is the old messaging-server protocol; only the regionHandle is available. |
173 | // Fetch region-info to get the id | 174 | // Fetch region-info to get the id |
174 | RegionInfo regionInfo = m_initialScene.RequestNeighbouringRegionInfo(info.regionHandle); | 175 | uint x = 0, y = 0; |
176 | Utils.LongToUInts(info.regionHandle, out x, out y); | ||
177 | GridRegion regionInfo = m_initialScene.GridService.GetRegionByPosition(m_initialScene.RegionInfo.ScopeID, | ||
178 | (int)x, (int)y); | ||
175 | regionID = regionInfo.RegionID; | 179 | regionID = regionInfo.RegionID; |
176 | } | 180 | } |
177 | result[indices[i]] = new PresenceInfo(uuids[i], regionID); | 181 | result[indices[i]] = new PresenceInfo(uuids[i], regionID); |
@@ -326,6 +330,9 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
326 | 330 | ||
327 | private void NotifyMessageServerOfStartup(Scene scene) | 331 | private void NotifyMessageServerOfStartup(Scene scene) |
328 | { | 332 | { |
333 | if (m_Scenes[0].CommsManager.NetworkServersInfo.MessagingURL == string.Empty) | ||
334 | return; | ||
335 | |||
329 | Hashtable xmlrpcdata = new Hashtable(); | 336 | Hashtable xmlrpcdata = new Hashtable(); |
330 | xmlrpcdata["RegionUUID"] = scene.RegionInfo.RegionID.ToString(); | 337 | xmlrpcdata["RegionUUID"] = scene.RegionInfo.RegionID.ToString(); |
331 | ArrayList SendParams = new ArrayList(); | 338 | ArrayList SendParams = new ArrayList(); |
@@ -349,6 +356,9 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
349 | 356 | ||
350 | private void NotifyMessageServerOfShutdown(Scene scene) | 357 | private void NotifyMessageServerOfShutdown(Scene scene) |
351 | { | 358 | { |
359 | if (m_Scenes[0].CommsManager.NetworkServersInfo.MessagingURL == string.Empty) | ||
360 | return; | ||
361 | |||
352 | Hashtable xmlrpcdata = new Hashtable(); | 362 | Hashtable xmlrpcdata = new Hashtable(); |
353 | xmlrpcdata["RegionUUID"] = scene.RegionInfo.RegionID.ToString(); | 363 | xmlrpcdata["RegionUUID"] = scene.RegionInfo.RegionID.ToString(); |
354 | ArrayList SendParams = new ArrayList(); | 364 | ArrayList SendParams = new ArrayList(); |
@@ -372,6 +382,9 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
372 | 382 | ||
373 | private void NotifyMessageServerOfAgentLocation(UUID agentID, UUID region, ulong regionHandle) | 383 | private void NotifyMessageServerOfAgentLocation(UUID agentID, UUID region, ulong regionHandle) |
374 | { | 384 | { |
385 | if (m_Scenes[0].CommsManager.NetworkServersInfo.MessagingURL == string.Empty) | ||
386 | return; | ||
387 | |||
375 | Hashtable xmlrpcdata = new Hashtable(); | 388 | Hashtable xmlrpcdata = new Hashtable(); |
376 | xmlrpcdata["AgentID"] = agentID.ToString(); | 389 | xmlrpcdata["AgentID"] = agentID.ToString(); |
377 | xmlrpcdata["RegionUUID"] = region.ToString(); | 390 | xmlrpcdata["RegionUUID"] = region.ToString(); |
@@ -397,6 +410,9 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
397 | 410 | ||
398 | private void NotifyMessageServerOfAgentLeaving(UUID agentID, UUID region, ulong regionHandle) | 411 | private void NotifyMessageServerOfAgentLeaving(UUID agentID, UUID region, ulong regionHandle) |
399 | { | 412 | { |
413 | if (m_Scenes[0].CommsManager.NetworkServersInfo.MessagingURL == string.Empty) | ||
414 | return; | ||
415 | |||
400 | Hashtable xmlrpcdata = new Hashtable(); | 416 | Hashtable xmlrpcdata = new Hashtable(); |
401 | xmlrpcdata["AgentID"] = agentID.ToString(); | 417 | xmlrpcdata["AgentID"] = agentID.ToString(); |
402 | xmlrpcdata["RegionUUID"] = region.ToString(); | 418 | xmlrpcdata["RegionUUID"] = region.ToString(); |