public void ChatterBoxSessionAgentListUpdates(UUID sessionID, UUID toAgent, List <GroupChatListAgentUpdateData> updates) { StringBuilder sb = StartEvent("ChatterBoxSessionAgentListUpdates", 1024); LLSDxmlEncode.AddMap("agent_updates", sb); foreach (GroupChatListAgentUpdateData up in updates) { LLSDxmlEncode.AddMap(up.agentID.ToString(), sb); LLSDxmlEncode.AddMap("info", sb); LLSDxmlEncode.AddElem("can_voice_chat", up.canVoice, sb); LLSDxmlEncode.AddElem("is_moderator", up.isModerator, sb); LLSDxmlEncode.AddMap("mutes", sb); LLSDxmlEncode.AddElem("text", up.mutedText, sb); LLSDxmlEncode.AddEndMap(sb); // mutes LLSDxmlEncode.AddEndMap(sb); // info if (up.enterOrLeave) { LLSDxmlEncode.AddElem("transition", "ENTER", sb); } else { LLSDxmlEncode.AddElem("transition", "LEAVE", sb); } LLSDxmlEncode.AddEndMap(sb); //agentid } LLSDxmlEncode.AddEndMap(sb); // agent_updates LLSDxmlEncode.AddEmptyMap("updates", sb); LLSDxmlEncode.AddElem("session_id", sessionID, sb); Enqueue(EndEventToBytes(sb), toAgent); }