diff options
5 files changed, 50 insertions, 1 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index f5fd5f5..a76c89e 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -1457,6 +1457,7 @@ namespace OpenSim.Framework | |||
1457 | void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags); | 1457 | void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags); |
1458 | 1458 | ||
1459 | void SendAvatarGroupsReply(UUID avatarID, GroupMembershipData[] data); | 1459 | void SendAvatarGroupsReply(UUID avatarID, GroupMembershipData[] data); |
1460 | void SendAgentGroupDataUpdate(UUID avatarID, GroupMembershipData[] data); | ||
1460 | void SendOfferCallingCard(UUID srcID, UUID transactionID); | 1461 | void SendOfferCallingCard(UUID srcID, UUID transactionID); |
1461 | void SendAcceptCallingCard(UUID transactionID); | 1462 | void SendAcceptCallingCard(UUID transactionID); |
1462 | void SendDeclineCallingCard(UUID transactionID); | 1463 | void SendDeclineCallingCard(UUID transactionID); |
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 57c7030..a524561 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -3404,6 +3404,41 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3404 | } | 3404 | } |
3405 | } | 3405 | } |
3406 | 3406 | ||
3407 | public void SendAgentGroupDataUpdate(UUID avatarID, GroupMembershipData[] data) | ||
3408 | { | ||
3409 | OSDMap llsd = new OSDMap(3); | ||
3410 | OSDArray AgentData = new OSDArray(1); | ||
3411 | OSDMap AgentDataMap = new OSDMap(1); | ||
3412 | AgentDataMap.Add("AgentID", OSD.FromUUID(this.AgentId)); | ||
3413 | AgentDataMap.Add("AvatarID", OSD.FromUUID(avatarID)); | ||
3414 | AgentData.Add(AgentDataMap); | ||
3415 | llsd.Add("AgentData", AgentData); | ||
3416 | OSDArray GroupData = new OSDArray(data.Length); | ||
3417 | OSDArray NewGroupData = new OSDArray(data.Length); | ||
3418 | foreach (GroupMembershipData m in data) | ||
3419 | { | ||
3420 | OSDMap GroupDataMap = new OSDMap(6); | ||
3421 | OSDMap NewGroupDataMap = new OSDMap(1); | ||
3422 | GroupDataMap.Add("GroupPowers", OSD.FromULong(m.GroupPowers)); | ||
3423 | GroupDataMap.Add("AcceptNotices", OSD.FromBoolean(m.AcceptNotices)); | ||
3424 | GroupDataMap.Add("GroupTitle", OSD.FromString(m.GroupTitle)); | ||
3425 | GroupDataMap.Add("GroupID", OSD.FromUUID(m.GroupID)); | ||
3426 | GroupDataMap.Add("GroupName", OSD.FromString(m.GroupName)); | ||
3427 | GroupDataMap.Add("GroupInsigniaID", OSD.FromUUID(m.GroupPicture)); | ||
3428 | NewGroupDataMap.Add("ListInProfile", OSD.FromBoolean(m.ListInProfile)); | ||
3429 | GroupData.Add(GroupDataMap); | ||
3430 | NewGroupData.Add(NewGroupDataMap); | ||
3431 | } | ||
3432 | llsd.Add("GroupData", GroupData); | ||
3433 | llsd.Add("NewGroupData", NewGroupData); | ||
3434 | |||
3435 | IEventQueue eq = this.Scene.RequestModuleInterface<IEventQueue>(); | ||
3436 | if (eq != null) | ||
3437 | { | ||
3438 | eq.Enqueue(BuildEvent("AgentGroupDataUpdate", llsd), this.AgentId); | ||
3439 | } | ||
3440 | } | ||
3441 | |||
3407 | public void SendJoinGroupReply(UUID groupID, bool success) | 3442 | public void SendJoinGroupReply(UUID groupID, bool success) |
3408 | { | 3443 | { |
3409 | JoinGroupReplyPacket p = (JoinGroupReplyPacket)PacketPool.Instance.GetPacket(PacketType.JoinGroupReply); | 3444 | JoinGroupReplyPacket p = (JoinGroupReplyPacket)PacketPool.Instance.GetPacket(PacketType.JoinGroupReply); |
diff --git a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs index a34f6ee..6a96d4d 100644 --- a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs +++ b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs | |||
@@ -1573,7 +1573,12 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server | |||
1573 | 1573 | ||
1574 | public void SendAvatarGroupsReply(UUID avatarID, GroupMembershipData[] data) | 1574 | public void SendAvatarGroupsReply(UUID avatarID, GroupMembershipData[] data) |
1575 | { | 1575 | { |
1576 | 1576 | ||
1577 | } | ||
1578 | |||
1579 | public void SendAgentGroupDataUpdate(UUID avatarID, GroupMembershipData[] data) | ||
1580 | { | ||
1581 | |||
1577 | } | 1582 | } |
1578 | 1583 | ||
1579 | public void SendOfferCallingCard(UUID srcID, UUID transactionID) | 1584 | public void SendOfferCallingCard(UUID srcID, UUID transactionID) |
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs index 35af6e7..15e3884 100644 --- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | |||
@@ -1183,6 +1183,10 @@ namespace OpenSim.Region.OptionalModules.World.NPC | |||
1183 | { | 1183 | { |
1184 | } | 1184 | } |
1185 | 1185 | ||
1186 | public void SendAgentGroupDataUpdate(UUID avatarID, GroupMembershipData[] data) | ||
1187 | { | ||
1188 | } | ||
1189 | |||
1186 | public void SendTerminateFriend(UUID exFriendID) | 1190 | public void SendTerminateFriend(UUID exFriendID) |
1187 | { | 1191 | { |
1188 | } | 1192 | } |
diff --git a/OpenSim/Tests/Common/Mock/TestClient.cs b/OpenSim/Tests/Common/Mock/TestClient.cs index f034443..76ee5c2 100644 --- a/OpenSim/Tests/Common/Mock/TestClient.cs +++ b/OpenSim/Tests/Common/Mock/TestClient.cs | |||
@@ -1208,6 +1208,10 @@ namespace OpenSim.Tests.Common | |||
1208 | { | 1208 | { |
1209 | } | 1209 | } |
1210 | 1210 | ||
1211 | public void SendAgentGroupDataUpdate(UUID avatarID, GroupMembershipData[] data) | ||
1212 | { | ||
1213 | } | ||
1214 | |||
1211 | public void SendJoinGroupReply(UUID groupID, bool success) | 1215 | public void SendJoinGroupReply(UUID groupID, bool success) |
1212 | { | 1216 | { |
1213 | } | 1217 | } |