From 766269a59b9ca45fcd203ce559fe13003e9abc24 Mon Sep 17 00:00:00 2001 From: Melanie Thielker Date: Wed, 29 Oct 2008 00:15:39 +0000 Subject: Plumbing along.... --- .../Region/ClientStack/LindenUDP/LLClientView.cs | 39 ++++++++++++++++++++++ OpenSim/Region/Interfaces/IGroupsModule.cs | 2 ++ 2 files changed, 41 insertions(+) diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 86ec7e2..8da5b0e 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs @@ -6861,6 +6861,45 @@ Console.WriteLine(msgpack.ToString()); } break; + case PacketType.GroupRoleUpdate: + GroupRoleUpdatePacket groupRoleUpdate = + (GroupRoleUpdatePacket)Pack; + + if (m_GroupsModule != null) + { + foreach (GroupRoleUpdatePacket.RoleDataBlock d in + groupRoleUpdate.RoleData) + { + m_GroupsModule.GroupRoleUpdate(this, + groupRoleUpdate.AgentData.GroupID, + d.RoleID, + Utils.BytesToString(d.Name), + Utils.BytesToString(d.Description), + Utils.BytesToString(d.Title), + d.Powers, + d.UpdateType); + } + } + break; + + case PacketType.GroupRoleChanges: + GroupRoleChangesPacket groupRoleChanges = + (GroupRoleChangesPacket)Pack; + + if (m_GroupsModule != null) + { + foreach (GroupRoleChangesPacket.RoleChangeBlock d in + groupRoleChanges.RoleChange) + { + m_GroupsModule.GroupRoleChanges(this, + groupRoleChanges.AgentData.GroupID, + d.RoleID, + d.MemberID, + d.Change); + } + } + break; + default: m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString()); break; diff --git a/OpenSim/Region/Interfaces/IGroupsModule.cs b/OpenSim/Region/Interfaces/IGroupsModule.cs index d428297..4d1b1cc 100644 --- a/OpenSim/Region/Interfaces/IGroupsModule.cs +++ b/OpenSim/Region/Interfaces/IGroupsModule.cs @@ -51,6 +51,8 @@ namespace OpenSim.Region.Interfaces GroupNoticeData[] GroupNoticesListRequest(IClientAPI remoteClient, UUID GroupID); string GetGroupTitle(UUID avatarID); + void GroupRoleUpdate(IClientAPI remoteClient, UUID GroupID, UUID RoleID, string name, string description, string title, ulong powers, byte updateType); + void GroupRoleChanges(IClientAPI remoteClient, UUID GroupID, UUID RoleID, UUID MemberID, uint changes); void GroupNoticeRequest(IClientAPI remoteClient, UUID groupNoticeID); void SendAgentGroupDataUpdate(IClientAPI remoteClient); } -- cgit v1.1