diff options
author | Diva Canto | 2013-07-27 15:38:56 -0700 |
---|---|---|
committer | Diva Canto | 2013-07-27 15:38:56 -0700 |
commit | 69975763d2a735eb2696d2e27e5796a472a208ea (patch) | |
tree | 3d3454d731471148951de01a9931aa5e67d359da /OpenSim/Region | |
parent | Clarifications on documentation of Group configs (diff) | |
download | opensim-SC_OLD-69975763d2a735eb2696d2e27e5796a472a208ea.zip opensim-SC_OLD-69975763d2a735eb2696d2e27e5796a472a208ea.tar.gz opensim-SC_OLD-69975763d2a735eb2696d2e27e5796a472a208ea.tar.bz2 opensim-SC_OLD-69975763d2a735eb2696d2e27e5796a472a208ea.tar.xz |
Several major improvements to group (V2) chat. Specifically: handle join/drop appropriately, invitechatboxes.
The major departure from flotsam is to send only one message per destination region, as opposed to one message per group member. This reduces messaging considerably in large groups that have clusters of members in certain regions.
Diffstat (limited to 'OpenSim/Region')
3 files changed, 5 insertions, 5 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs index c69f758..d7afe1a 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs | |||
@@ -750,12 +750,12 @@ namespace OpenSim.Region.ClientStack.Linden | |||
750 | 750 | ||
751 | } | 751 | } |
752 | 752 | ||
753 | public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, | 753 | public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat, |
754 | bool isModerator, bool textMute) | 754 | bool isModerator, bool textMute) |
755 | { | 755 | { |
756 | OSD item = EventQueueHelper.ChatterBoxSessionAgentListUpdates(sessionID, fromAgent, canVoiceChat, | 756 | OSD item = EventQueueHelper.ChatterBoxSessionAgentListUpdates(sessionID, fromAgent, canVoiceChat, |
757 | isModerator, textMute); | 757 | isModerator, textMute); |
758 | Enqueue(item, toAgent); | 758 | Enqueue(item, fromAgent); |
759 | //m_log.InfoFormat("########### eq ChatterBoxSessionAgentListUpdates #############\n{0}", item); | 759 | //m_log.InfoFormat("########### eq ChatterBoxSessionAgentListUpdates #############\n{0}", item); |
760 | } | 760 | } |
761 | 761 | ||
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs index fa935cd..40a400f 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | |||
@@ -372,7 +372,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
372 | gim.fromAgentName = fromAgentName; | 372 | gim.fromAgentName = fromAgentName; |
373 | gim.fromGroup = fromGroup; | 373 | gim.fromGroup = fromGroup; |
374 | gim.imSessionID = imSessionID.Guid; | 374 | gim.imSessionID = imSessionID.Guid; |
375 | gim.RegionID = UUID.Zero.Guid; // RegionID.Guid; | 375 | gim.RegionID = RegionID.Guid; |
376 | gim.timestamp = timestamp; | 376 | gim.timestamp = timestamp; |
377 | gim.toAgentID = toAgentID.Guid; | 377 | gim.toAgentID = toAgentID.Guid; |
378 | gim.message = message; | 378 | gim.message = message; |
@@ -672,7 +672,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
672 | gim["position_x"] = msg.Position.X.ToString(); | 672 | gim["position_x"] = msg.Position.X.ToString(); |
673 | gim["position_y"] = msg.Position.Y.ToString(); | 673 | gim["position_y"] = msg.Position.Y.ToString(); |
674 | gim["position_z"] = msg.Position.Z.ToString(); | 674 | gim["position_z"] = msg.Position.Z.ToString(); |
675 | gim["region_id"] = msg.RegionID.ToString(); | 675 | gim["region_id"] = new UUID(msg.RegionID).ToString(); |
676 | gim["binary_bucket"] = Convert.ToBase64String(msg.binaryBucket,Base64FormattingOptions.None); | 676 | gim["binary_bucket"] = Convert.ToBase64String(msg.binaryBucket,Base64FormattingOptions.None); |
677 | return gim; | 677 | return gim; |
678 | } | 678 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IEventQueue.cs b/OpenSim/Region/Framework/Interfaces/IEventQueue.cs index 5512642..3780ece 100644 --- a/OpenSim/Region/Framework/Interfaces/IEventQueue.cs +++ b/OpenSim/Region/Framework/Interfaces/IEventQueue.cs | |||
@@ -53,7 +53,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
53 | UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, | 53 | UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, |
54 | uint timeStamp, bool offline, int parentEstateID, Vector3 position, | 54 | uint timeStamp, bool offline, int parentEstateID, Vector3 position, |
55 | uint ttl, UUID transactionID, bool fromGroup, byte[] binaryBucket); | 55 | uint ttl, UUID transactionID, bool fromGroup, byte[] binaryBucket); |
56 | void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, | 56 | void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat, |
57 | bool isModerator, bool textMute); | 57 | bool isModerator, bool textMute); |
58 | void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID); | 58 | void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID); |
59 | void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID); | 59 | void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID); |