add a missing field to ChatterBoxSessionAgentListUpdates. it is still wrong, and its use even worse

LSLKeyTest
UbitUmarov 2016-07-23 01:28:47 +01:00
parent 504ee6e21c
commit cdf215f613
6 changed files with 25 additions and 10 deletions

View File

@ -627,6 +627,7 @@ namespace OpenSim.Groups
, false //canVoiceChat
, false //isModerator
, false //text mute
, true // Enter
);
}
}
@ -669,6 +670,7 @@ namespace OpenSim.Groups
, false //canVoiceChat
, false //isModerator
, false //text mute
, true
);
}
}

View File

@ -372,7 +372,7 @@ namespace OpenSim.Region.ClientStack.Linden
caps.RegisterPollHandler(
"EventQueueGet",
new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, agentID, SERVER_EQ_TIME_NO_EVENTS));
new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, Drop, agentID, SERVER_EQ_TIME_NO_EVENTS));
}
public bool HasEvents(UUID requestID, UUID agentID)
@ -403,6 +403,10 @@ namespace OpenSim.Region.ClientStack.Linden
ev["message"], m_scene.GetScenePresence(agentId).Name, m_scene.Name);
}
}
public void Drop(UUID requestID, UUID pAgentId)
{
// do nothing for now, hope client close will do it
}
public Hashtable GetEvents(UUID requestID, UUID pAgentId)
{
@ -564,12 +568,12 @@ namespace OpenSim.Region.ClientStack.Linden
}
public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat,
bool isModerator, bool textMute)
public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat,
bool isModerator, bool textMute, bool isEnterorLeave)
{
OSD item = EventQueueHelper.ChatterBoxSessionAgentListUpdates(sessionID, fromAgent, canVoiceChat,
isModerator, textMute);
Enqueue(item, fromAgent);
isModerator, textMute, isEnterorLeave);
Enqueue(item, toAgent);
//m_log.InfoFormat("########### eq ChatterBoxSessionAgentListUpdates #############\n{0}", item);
}

View File

@ -308,7 +308,7 @@ namespace OpenSim.Region.ClientStack.Linden
}
public static OSD ChatterBoxSessionAgentListUpdates(UUID sessionID,
UUID agentID, bool canVoiceChat, bool isModerator, bool textMute)
UUID agentID, bool canVoiceChat, bool isModerator, bool textMute, bool isEnterorLeave)
{
OSDMap body = new OSDMap();
OSDMap agentUpdates = new OSDMap();
@ -321,7 +321,13 @@ namespace OpenSim.Region.ClientStack.Linden
infoDetail.Add("mutes", mutes);
OSDMap info = new OSDMap();
info.Add("info", infoDetail);
if(isEnterorLeave)
info.Add("transition",OSD.FromString("ENTER"));
else
info.Add("transition",OSD.FromString("LEAVE"));
agentUpdates.Add(agentID.ToString(), info);
body.Add("agent_updates", agentUpdates);
body.Add("session_id", OSD.FromUUID(sessionID));
body.Add("updates", new OSD());

View File

@ -56,7 +56,7 @@ namespace OpenSim.Region.Framework.Interfaces
uint timeStamp, bool offline, int parentEstateID, Vector3 position,
uint ttl, UUID transactionID, bool fromGroup, byte[] binaryBucket);
void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID fromAgent, UUID anotherAgent, bool canVoiceChat,
bool isModerator, bool textMute);
bool isModerator, bool textMute, bool isEnterorLeave);
void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID);
void GroupMembershipData(UUID receiverAgent, GroupMembershipData[] data);
OSD ScriptRunningEvent(UUID objectID, UUID itemID, bool running, bool mono);

View File

@ -526,6 +526,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
, false //canVoiceChat
, false //isModerator
, false //text mute
, true // enter
);
}
@ -574,7 +575,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
m_groupData.AgentInvitedToGroupChatSession(AgentID, GroupID);
ChatterBoxSessionStartReplyViaCaps(remoteClient, groupInfo.GroupName, GroupID);
/* this seems wrong
IEventQueue queue = remoteClient.Scene.RequestModuleInterface<IEventQueue>();
queue.ChatterBoxSessionAgentListUpdates(
GroupID
@ -583,7 +584,9 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
, false //canVoiceChat
, false //isModerator
, false //text mute
, true
);
*/
}
}

View File

@ -147,9 +147,9 @@ namespace OpenSim.Tests.Common
timeStamp, offline, parentEstateID, position, ttl, transactionID, fromGroup, binaryBucket);
}
public void ChatterBoxSessionAgentListUpdates (UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, bool isModerator, bool textMute)
public void ChatterBoxSessionAgentListUpdates (UUID sessionID, UUID fromAgent, UUID toAgent, bool canVoiceChat, bool isModerator, bool textMute , bool isEnterorLeave)
{
AddEvent(toAgent, "ChatterBoxSessionAgentListUpdates", sessionID, fromAgent, canVoiceChat, isModerator, textMute);
AddEvent(toAgent, "ChatterBoxSessionAgentListUpdates", sessionID, fromAgent, canVoiceChat, isModerator, textMute, isEnterorLeave);
}
public void ParcelProperties (OpenMetaverse.Messages.Linden.ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID)