diff options
6 files changed, 25 insertions, 10 deletions
diff --git a/OpenSim/Addons/Groups/GroupsMessagingModule.cs b/OpenSim/Addons/Groups/GroupsMessagingModule.cs index e95db41..2ec9652 100644 --- a/OpenSim/Addons/Groups/GroupsMessagingModule.cs +++ b/OpenSim/Addons/Groups/GroupsMessagingModule.cs | |||
@@ -627,6 +627,7 @@ namespace OpenSim.Groups | |||
627 | , false //canVoiceChat | 627 | , false //canVoiceChat |
628 | , false //isModerator | 628 | , false //isModerator |
629 | , false //text mute | 629 | , false //text mute |
630 | , true // Enter | ||
630 | ); | 631 | ); |
631 | } | 632 | } |
632 | } | 633 | } |
@@ -669,6 +670,7 @@ namespace OpenSim.Groups | |||
669 | , false //canVoiceChat | 670 | , false //canVoiceChat |
670 | , false //isModerator | 671 | , false //isModerator |
671 | , false //text mute | 672 | , false //text mute |
673 | , true | ||
672 | ); | 674 | ); |
673 | } | 675 | } |
674 | } | 676 | } |
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs index cc614f3..f3acacd 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs | |||
@@ -372,7 +372,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
372 | 372 | ||
373 | caps.RegisterPollHandler( | 373 | caps.RegisterPollHandler( |
374 | "EventQueueGet", | 374 | "EventQueueGet", |
375 | new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, agentID, SERVER_EQ_TIME_NO_EVENTS)); | 375 | new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, Drop, agentID, SERVER_EQ_TIME_NO_EVENTS)); |
376 | } | 376 | } |
377 | 377 | ||
378 | public bool HasEvents(UUID requestID, UUID agentID) | 378 | public bool HasEvents(UUID requestID, UUID agentID) |
@@ -403,6 +403,10 @@ namespace OpenSim.Region.ClientStack.Linden | |||
403 | ev["message"], m_scene.GetScenePresence(agentId).Name, m_scene.Name); | 403 | ev["message"], m_scene.GetScenePresence(agentId).Name, m_scene.Name); |
404 | } | 404 | } |
405 | } | 405 | } |
406 | public void Drop(UUID requestID, UUID pAgentId) | ||
407 | { | ||
408 | // do nothing for now, hope client close will do it | ||
409 | } | ||
406 | 410 | ||
407 | public Hashtable GetEvents(UUID requestID, UUID pAgentId) | 411 | public Hashtable GetEvents(UUID requestID, UUID pAgentId) |
408 | { | 412 | { |
@@ -564,12 +568,12 @@ namespace OpenSim.Region.ClientStack.Linden | |||
564 | 568 | ||
565 | } | 569 | } |
566 | 570 | ||
567 | public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat, | 571 | public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, |
568 | bool isModerator, bool textMute) | 572 | bool isModerator, bool textMute, bool isEnterorLeave) |
569 | { | 573 | { |
570 | OSD item = EventQueueHelper.ChatterBoxSessionAgentListUpdates(sessionID, fromAgent, canVoiceChat, | 574 | OSD item = EventQueueHelper.ChatterBoxSessionAgentListUpdates(sessionID, fromAgent, canVoiceChat, |
571 | isModerator, textMute); | 575 | isModerator, textMute, isEnterorLeave); |
572 | Enqueue(item, fromAgent); | 576 | Enqueue(item, toAgent); |
573 | //m_log.InfoFormat("########### eq ChatterBoxSessionAgentListUpdates #############\n{0}", item); | 577 | //m_log.InfoFormat("########### eq ChatterBoxSessionAgentListUpdates #############\n{0}", item); |
574 | } | 578 | } |
575 | 579 | ||
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueHelper.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueHelper.cs index 8beeb95..f1c29f6 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueHelper.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueHelper.cs | |||
@@ -308,7 +308,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
308 | } | 308 | } |
309 | 309 | ||
310 | public static OSD ChatterBoxSessionAgentListUpdates(UUID sessionID, | 310 | public static OSD ChatterBoxSessionAgentListUpdates(UUID sessionID, |
311 | UUID agentID, bool canVoiceChat, bool isModerator, bool textMute) | 311 | UUID agentID, bool canVoiceChat, bool isModerator, bool textMute, bool isEnterorLeave) |
312 | { | 312 | { |
313 | OSDMap body = new OSDMap(); | 313 | OSDMap body = new OSDMap(); |
314 | OSDMap agentUpdates = new OSDMap(); | 314 | OSDMap agentUpdates = new OSDMap(); |
@@ -321,7 +321,13 @@ namespace OpenSim.Region.ClientStack.Linden | |||
321 | infoDetail.Add("mutes", mutes); | 321 | infoDetail.Add("mutes", mutes); |
322 | OSDMap info = new OSDMap(); | 322 | OSDMap info = new OSDMap(); |
323 | info.Add("info", infoDetail); | 323 | info.Add("info", infoDetail); |
324 | if(isEnterorLeave) | ||
325 | info.Add("transition",OSD.FromString("ENTER")); | ||
326 | else | ||
327 | info.Add("transition",OSD.FromString("LEAVE")); | ||
324 | agentUpdates.Add(agentID.ToString(), info); | 328 | agentUpdates.Add(agentID.ToString(), info); |
329 | |||
330 | |||
325 | body.Add("agent_updates", agentUpdates); | 331 | body.Add("agent_updates", agentUpdates); |
326 | body.Add("session_id", OSD.FromUUID(sessionID)); | 332 | body.Add("session_id", OSD.FromUUID(sessionID)); |
327 | body.Add("updates", new OSD()); | 333 | body.Add("updates", new OSD()); |
diff --git a/OpenSim/Region/Framework/Interfaces/IEventQueue.cs b/OpenSim/Region/Framework/Interfaces/IEventQueue.cs index 4361310..b525769 100644 --- a/OpenSim/Region/Framework/Interfaces/IEventQueue.cs +++ b/OpenSim/Region/Framework/Interfaces/IEventQueue.cs | |||
@@ -56,7 +56,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
56 | uint timeStamp, bool offline, int parentEstateID, Vector3 position, | 56 | uint timeStamp, bool offline, int parentEstateID, Vector3 position, |
57 | uint ttl, UUID transactionID, bool fromGroup, byte[] binaryBucket); | 57 | uint ttl, UUID transactionID, bool fromGroup, byte[] binaryBucket); |
58 | void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat, | 58 | void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat, |
59 | bool isModerator, bool textMute); | 59 | bool isModerator, bool textMute, bool isEnterorLeave); |
60 | void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID); | 60 | void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID); |
61 | void GroupMembershipData(UUID receiverAgent, GroupMembershipData[] data); | 61 | void GroupMembershipData(UUID receiverAgent, GroupMembershipData[] data); |
62 | OSD ScriptRunningEvent(UUID objectID, UUID itemID, bool running, bool mono); | 62 | OSD ScriptRunningEvent(UUID objectID, UUID itemID, bool running, bool mono); |
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs index e1b6abb..3d9175c 100644 --- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsMessagingModule.cs | |||
@@ -526,6 +526,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
526 | , false //canVoiceChat | 526 | , false //canVoiceChat |
527 | , false //isModerator | 527 | , false //isModerator |
528 | , false //text mute | 528 | , false //text mute |
529 | , true // enter | ||
529 | ); | 530 | ); |
530 | } | 531 | } |
531 | 532 | ||
@@ -574,7 +575,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
574 | m_groupData.AgentInvitedToGroupChatSession(AgentID, GroupID); | 575 | m_groupData.AgentInvitedToGroupChatSession(AgentID, GroupID); |
575 | 576 | ||
576 | ChatterBoxSessionStartReplyViaCaps(remoteClient, groupInfo.GroupName, GroupID); | 577 | ChatterBoxSessionStartReplyViaCaps(remoteClient, groupInfo.GroupName, GroupID); |
577 | 578 | /* this seems wrong | |
578 | IEventQueue queue = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); | 579 | IEventQueue queue = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); |
579 | queue.ChatterBoxSessionAgentListUpdates( | 580 | queue.ChatterBoxSessionAgentListUpdates( |
580 | GroupID | 581 | GroupID |
@@ -583,7 +584,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups | |||
583 | , false //canVoiceChat | 584 | , false //canVoiceChat |
584 | , false //isModerator | 585 | , false //isModerator |
585 | , false //text mute | 586 | , false //text mute |
587 | , true | ||
586 | ); | 588 | ); |
589 | */ | ||
587 | } | 590 | } |
588 | } | 591 | } |
589 | 592 | ||
diff --git a/OpenSim/Tests/Common/Mock/TestEventQueueGetModule.cs b/OpenSim/Tests/Common/Mock/TestEventQueueGetModule.cs index 6ed9a16..417efce 100644 --- a/OpenSim/Tests/Common/Mock/TestEventQueueGetModule.cs +++ b/OpenSim/Tests/Common/Mock/TestEventQueueGetModule.cs | |||
@@ -147,9 +147,9 @@ namespace OpenSim.Tests.Common | |||
147 | timeStamp, offline, parentEstateID, position, ttl, transactionID, fromGroup, binaryBucket); | 147 | timeStamp, offline, parentEstateID, position, ttl, transactionID, fromGroup, binaryBucket); |
148 | } | 148 | } |
149 | 149 | ||
150 | public void ChatterBoxSessionAgentListUpdates (UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, bool isModerator, bool textMute) | 150 | public void ChatterBoxSessionAgentListUpdates (UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, bool isModerator, bool textMute , bool isEnterorLeave) |
151 | { | 151 | { |
152 | AddEvent(toAgent, "ChatterBoxSessionAgentListUpdates", sessionID, fromAgent, canVoiceChat, isModerator, textMute); | 152 | AddEvent(toAgent, "ChatterBoxSessionAgentListUpdates", sessionID, fromAgent, canVoiceChat, isModerator, textMute, isEnterorLeave); |
153 | } | 153 | } |
154 | 154 | ||
155 | public void ParcelProperties (OpenMetaverse.Messages.Linden.ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID) | 155 | public void ParcelProperties (OpenMetaverse.Messages.Linden.ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID) |