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/Region | |
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 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Friends/HGFriendsModule.cs | 11 |
2 files changed, 10 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs index f82716d..daee4ca 100644 --- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs | |||
@@ -830,10 +830,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends | |||
830 | 830 | ||
831 | public bool LocalStatusNotification(UUID userID, UUID friendID, bool online) | 831 | public bool LocalStatusNotification(UUID userID, UUID friendID, bool online) |
832 | { | 832 | { |
833 | m_log.DebugFormat("[FRIENDS]: Local Status Notify {0} that user {1} is {2}", friendID, userID, online); | ||
833 | IClientAPI friendClient = LocateClientObject(friendID); | 834 | IClientAPI friendClient = LocateClientObject(friendID); |
834 | if (friendClient != null) | 835 | if (friendClient != null) |
835 | { | 836 | { |
836 | //m_log.DebugFormat("[FRIENDS]: Local Status Notify {0} that user {1} is {2}", friendID, userID, online); | ||
837 | // the friend in this sim as root agent | 837 | // the friend in this sim as root agent |
838 | if (online) | 838 | if (online) |
839 | friendClient.SendAgentOnline(new UUID[] { userID }); | 839 | friendClient.SendAgentOnline(new UUID[] { userID }); |
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/HGFriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/HGFriendsModule.cs index ddf9289..b9d6719 100644 --- a/OpenSim/Region/CoreModules/Avatar/Friends/HGFriendsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Friends/HGFriendsModule.cs | |||
@@ -75,7 +75,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends | |||
75 | /// <param name="friendID">friend whose status changed</param> | 75 | /// <param name="friendID">friend whose status changed</param> |
76 | /// <param name="online">status</param> | 76 | /// <param name="online">status</param> |
77 | /// <returns></returns> | 77 | /// <returns></returns> |
78 | public bool StatusNotify(UUID userID, UUID friendID, bool online) | 78 | public bool StatusNotify(UUID friendID, UUID userID, bool online) |
79 | { | 79 | { |
80 | return LocalStatusNotification(friendID, userID, online); | 80 | return LocalStatusNotification(friendID, userID, online); |
81 | } | 81 | } |
@@ -279,7 +279,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends | |||
279 | foreach (FriendInfo f in kvp.Value) | 279 | foreach (FriendInfo f in kvp.Value) |
280 | ids.Add(f.Friend); | 280 | ids.Add(f.Friend); |
281 | UserAgentServiceConnector uConn = new UserAgentServiceConnector(kvp.Key); | 281 | UserAgentServiceConnector uConn = new UserAgentServiceConnector(kvp.Key); |
282 | uConn.StatusNotification(ids, userID, online); | 282 | List<UUID> friendsOnline = uConn.StatusNotification(ids, userID, online); |
283 | // need to debug this here | ||
284 | if (online) | ||
285 | { | ||
286 | IClientAPI client = LocateClientObject(userID); | ||
287 | if (client != null) | ||
288 | client.SendAgentOnline(friendsOnline.ToArray()); | ||
289 | } | ||
283 | } | 290 | } |
284 | } | 291 | } |
285 | } | 292 | } |