diff options
Diffstat (limited to 'OpenSim/Region/Environment')
-rw-r--r-- | OpenSim/Region/Environment/Modules/FriendsModule.cs | 15 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Modules/InstantMessageModule.cs | 20 |
2 files changed, 20 insertions, 15 deletions
diff --git a/OpenSim/Region/Environment/Modules/FriendsModule.cs b/OpenSim/Region/Environment/Modules/FriendsModule.cs index e1d3e2a..4d06750 100644 --- a/OpenSim/Region/Environment/Modules/FriendsModule.cs +++ b/OpenSim/Region/Environment/Modules/FriendsModule.cs | |||
@@ -45,8 +45,8 @@ namespace OpenSim.Region.Environment.Modules | |||
45 | 45 | ||
46 | private List<Scene> m_scene = new List<Scene>(); | 46 | private List<Scene> m_scene = new List<Scene>(); |
47 | 47 | ||
48 | |||
49 | Dictionary<LLUUID, ulong> m_rootAgents = new Dictionary<LLUUID, ulong>(); | 48 | Dictionary<LLUUID, ulong> m_rootAgents = new Dictionary<LLUUID, ulong>(); |
49 | |||
50 | Dictionary<LLUUID, LLUUID> m_pendingFriendRequests = new Dictionary<LLUUID, LLUUID>(); | 50 | Dictionary<LLUUID, LLUUID> m_pendingFriendRequests = new Dictionary<LLUUID, LLUUID>(); |
51 | 51 | ||
52 | public void Initialise(Scene scene, IConfigSource config) | 52 | public void Initialise(Scene scene, IConfigSource config) |
@@ -66,9 +66,6 @@ namespace OpenSim.Region.Environment.Modules | |||
66 | scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel; | 66 | scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel; |
67 | scene.EventManager.OnMakeChildAgent += MakeChildAgent; | 67 | scene.EventManager.OnMakeChildAgent += MakeChildAgent; |
68 | scene.EventManager.OnClientClosed += ClientLoggedOut; | 68 | scene.EventManager.OnClientClosed += ClientLoggedOut; |
69 | |||
70 | |||
71 | |||
72 | } | 69 | } |
73 | public XmlRpcResponse processPresenceUpdate(XmlRpcRequest req) | 70 | public XmlRpcResponse processPresenceUpdate(XmlRpcRequest req) |
74 | { | 71 | { |
@@ -90,10 +87,6 @@ namespace OpenSim.Region.Environment.Modules | |||
90 | client.OnDenyFriendRequest += OnDenyFriendRequest; | 87 | client.OnDenyFriendRequest += OnDenyFriendRequest; |
91 | client.OnTerminateFriendship += OnTerminateFriendship; | 88 | client.OnTerminateFriendship += OnTerminateFriendship; |
92 | 89 | ||
93 | |||
94 | |||
95 | |||
96 | |||
97 | } | 90 | } |
98 | 91 | ||
99 | private void ClientLoggedOut(LLUUID AgentId) | 92 | private void ClientLoggedOut(LLUUID AgentId) |
@@ -144,9 +137,9 @@ namespace OpenSim.Region.Environment.Modules | |||
144 | 137 | ||
145 | } | 138 | } |
146 | } | 139 | } |
147 | |||
148 | } | ||
149 | 140 | ||
141 | } | ||
142 | #region FriendRequestHandling | ||
150 | private void OnInstantMessage(IClientAPI client,LLUUID fromAgentID, | 143 | private void OnInstantMessage(IClientAPI client,LLUUID fromAgentID, |
151 | LLUUID fromAgentSession, LLUUID toAgentID, | 144 | LLUUID fromAgentSession, LLUUID toAgentID, |
152 | LLUUID imSessionID, uint timestamp, string fromAgentName, | 145 | LLUUID imSessionID, uint timestamp, string fromAgentName, |
@@ -293,7 +286,7 @@ namespace OpenSim.Region.Environment.Modules | |||
293 | new LLVector3(msg.Position.x, msg.Position.y, msg.Position.z), new LLUUID(msg.RegionID), | 286 | new LLVector3(msg.Position.x, msg.Position.y, msg.Position.z), new LLUUID(msg.RegionID), |
294 | msg.binaryBucket); | 287 | msg.binaryBucket); |
295 | } | 288 | } |
296 | 289 | #endregion | |
297 | private ScenePresence GetPresenceFromAgentID(LLUUID AgentID) | 290 | private ScenePresence GetPresenceFromAgentID(LLUUID AgentID) |
298 | { | 291 | { |
299 | ScenePresence returnAgent = null; | 292 | ScenePresence returnAgent = null; |
diff --git a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs index 8df2acb..70f3d99 100644 --- a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs +++ b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs | |||
@@ -26,27 +26,39 @@ | |||
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | 28 | ||
29 | using System.Collections; | ||
29 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
30 | using libsecondlife; | 31 | using libsecondlife; |
31 | using Nini.Config; | 32 | using Nini.Config; |
33 | using Nwc.XmlRpc; | ||
32 | using OpenSim.Framework; | 34 | using OpenSim.Framework; |
33 | using OpenSim.Framework.Console; | 35 | using OpenSim.Framework.Console; |
34 | using OpenSim.Region.Environment.Interfaces; | 36 | using OpenSim.Region.Environment.Interfaces; |
35 | using OpenSim.Region.Environment.Scenes; | 37 | using OpenSim.Region.Environment.Scenes; |
36 | 38 | ||
39 | |||
37 | namespace OpenSim.Region.Environment.Modules | 40 | namespace OpenSim.Region.Environment.Modules |
38 | { | 41 | { |
39 | public class InstantMessageModule : IRegionModule | 42 | public class InstantMessageModule : IRegionModule |
40 | { | 43 | { |
41 | private List<Scene> m_scenes = new List<Scene>(); | 44 | private List<Scene> m_scenes = new List<Scene>(); |
45 | private Hashtable m_RegionInfoCache = new Hashtable(); | ||
42 | 46 | ||
43 | public void Initialise(Scene scene, IConfigSource config) | 47 | public void Initialise(Scene scene, IConfigSource config) |
44 | { | 48 | { |
45 | if (!m_scenes.Contains(scene)) | 49 | lock (m_scenes) |
46 | { | 50 | { |
47 | m_scenes.Add(scene); | 51 | if (m_scenes.Count == 0) |
48 | scene.EventManager.OnNewClient += OnNewClient; | 52 | { |
49 | scene.EventManager.OnGridInstantMessageToIMModule += OnGridInstantMessage; | 53 | //scene.AddXmlRPCHandler("avatar_location_update", processPresenceUpdate); |
54 | } | ||
55 | |||
56 | if (!m_scenes.Contains(scene)) | ||
57 | { | ||
58 | m_scenes.Add(scene); | ||
59 | scene.EventManager.OnNewClient += OnNewClient; | ||
60 | scene.EventManager.OnGridInstantMessageToIMModule += OnGridInstantMessage; | ||
61 | } | ||
50 | } | 62 | } |
51 | } | 63 | } |
52 | 64 | ||