Example #1
0
        public static OSD GroupMembership(AgentGroupDataUpdatePacket groupUpdatePacket)
        {
            OSDMap groupUpdate = new OSDMap();

            groupUpdate.Add("message", OSD.FromString("AgentGroupDataUpdate"));

            OSDMap   body         = new OSDMap();
            OSDArray agentData    = new OSDArray();
            OSDMap   agentDataMap = new OSDMap();

            agentDataMap.Add("AgentID", OSD.FromUUID(groupUpdatePacket.AgentData.AgentID));
            agentData.Add(agentDataMap);
            body.Add("AgentData", agentData);

            OSDArray groupData = new OSDArray();

            foreach (AgentGroupDataUpdatePacket.GroupDataBlock groupDataBlock in groupUpdatePacket.GroupData)
            {
                OSDMap groupDataMap = new OSDMap();
                groupDataMap.Add("ListInProfile", OSD.FromBoolean(false));
                groupDataMap.Add("GroupID", OSD.FromUUID(groupDataBlock.GroupID));
                groupDataMap.Add("GroupInsigniaID", OSD.FromUUID(groupDataBlock.GroupInsigniaID));
                groupDataMap.Add("Contribution", OSD.FromInteger(groupDataBlock.Contribution));
                groupDataMap.Add("GroupPowers", OSD.FromBinary(ulongToByteArray(groupDataBlock.GroupPowers)));
                groupDataMap.Add("GroupName", OSD.FromString(Utils.BytesToString(groupDataBlock.GroupName)));
                groupDataMap.Add("AcceptNotices", OSD.FromBoolean(groupDataBlock.AcceptNotices));

                groupData.Add(groupDataMap);
            }
            body.Add("GroupData", groupData);
            groupUpdate.Add("body", body);

            return(groupUpdate);
        }
Example #2
0
        private void GroupDataHandler(Packet packet, Simulator simulator)
        {
            if (OnCurrentGroups != null)
            {
                AgentGroupDataUpdatePacket update = (AgentGroupDataUpdatePacket)packet;

                Dictionary <LLUUID, Group> currentGroups = new Dictionary <LLUUID, Group>();

                foreach (AgentGroupDataUpdatePacket.GroupDataBlock block in update.GroupData)
                {
                    Group group = new Group(block.GroupID);

                    group.InsigniaID    = block.GroupInsigniaID;
                    group.Name          = Helpers.FieldToString(block.GroupName);
                    group.Powers        = block.GroupPowers;
                    group.Contribution  = block.Contribution;
                    group.AcceptNotices = block.AcceptNotices;

                    currentGroups[block.GroupID] = group;
                }

                if (OnCurrentGroups != null)
                {
                    OnCurrentGroups(currentGroups);
                }
            }
        }
Example #3
0
        public void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID)
        {
            if (m_log.IsDebugEnabled)
            {
                m_log.DebugFormat("{0} called", System.Reflection.MethodBase.GetCurrentMethod().Name);
            }

            OSD item = EventQueueHelper.GroupMembership(groupUpdate);

            Enqueue(item, avatarID);
        }
Example #4
0
        public virtual void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID, UUID regionID)
        {
            OSD item = EventQueueHelper.GroupMembership(groupUpdate);

            Enqueue(item, avatarID, regionID);
        }
        public static OSD GroupMembership(AgentGroupDataUpdatePacket groupUpdatePacket)
        {
            OSDMap groupUpdate = new OSDMap {{"message", OSD.FromString("AgentGroupDataUpdate")}};

            OSDMap body = new OSDMap();
            OSDArray agentData = new OSDArray();
            OSDMap agentDataMap = new OSDMap {{"AgentID", OSD.FromUUID(groupUpdatePacket.AgentData.AgentID)}};
            agentData.Add(agentDataMap);
            body.Add("AgentData", agentData);

            OSDArray groupData = new OSDArray();

#if(!ISWIN)
            foreach (AgentGroupDataUpdatePacket.GroupDataBlock groupDataBlock in groupUpdatePacket.GroupData)
            {
                OSDMap groupDataMap = new OSDMap();
                groupDataMap.Add("ListInProfile", OSD.FromBoolean(false));
                groupDataMap.Add("GroupID", OSD.FromUUID(groupDataBlock.GroupID));
                groupDataMap.Add("GroupInsigniaID", OSD.FromUUID(groupDataBlock.GroupInsigniaID));
                groupDataMap.Add("Contribution", OSD.FromInteger(groupDataBlock.Contribution));
                groupDataMap.Add("GroupPowers", OSD.FromBinary(ulongToByteArray(groupDataBlock.GroupPowers)));
                groupDataMap.Add("GroupName", OSD.FromString(Utils.BytesToString(groupDataBlock.GroupName)));
                groupDataMap.Add("AcceptNotices", OSD.FromBoolean(groupDataBlock.AcceptNotices));

                groupData.Add(groupDataMap);
            }
#else
            foreach (OSDMap groupDataMap in groupUpdatePacket.GroupData.Select(groupDataBlock => new OSDMap
                                                                                                     {
                                                                                                         {"ListInProfile", OSD.FromBoolean(false)},
                                                                                                         {"GroupID", OSD.FromUUID(groupDataBlock.GroupID)},
                                                                                                         {"GroupInsigniaID", OSD.FromUUID(groupDataBlock.GroupInsigniaID)},
                                                                                                         {"Contribution", OSD.FromInteger(groupDataBlock.Contribution)},
                                                                                                         {"GroupPowers", OSD.FromBinary(ulongToByteArray(groupDataBlock.GroupPowers))},
                                                                                                         {"GroupName", OSD.FromString(Utils.BytesToString(groupDataBlock.GroupName))},
                                                                                                         {"AcceptNotices", OSD.FromBoolean(groupDataBlock.AcceptNotices)}
                                                                                                     }))
            {
                groupData.Add(groupDataMap);
            }
#endif
            body.Add("GroupData", groupData);
            groupUpdate.Add("body", body);

            return groupUpdate;
        }
 public void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID)
 {
     OSD item = EventQueueHelper.GroupMembership(groupUpdate);
     Enqueue(item, avatarID);
 }
Example #7
0
 public virtual void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID, ulong RegionHandle)
 {
     OSD item = EventQueueHelper.GroupMembership(groupUpdate);
     Enqueue(item, avatarID, RegionHandle);
 }
        public void GroupMembership(AgentGroupDataUpdatePacket groupUpdate, UUID avatarID)
        {
            if (m_log.IsDebugEnabled) {
                m_log.DebugFormat ("{0} called", System.Reflection.MethodBase.GetCurrentMethod ().Name);
            }

            OSD item = EventQueueHelper.GroupMembership(groupUpdate);
            Enqueue(item, avatarID);
        }
Example #9
0
        public static EventQueueEvent GroupMembership(AgentGroupDataUpdatePacket groupUpdatePacket)
        {
            OSDMap groupUpdate = new OSDMap();
            groupUpdate.Add("message", OSD.FromString("AgentGroupDataUpdate"));

            OSDMap body = new OSDMap();
            OSDArray agentData = new OSDArray();
            OSDMap agentDataMap = new OSDMap();
            agentDataMap.Add("AgentID", OSD.FromUUID(groupUpdatePacket.AgentData.AgentID));
            agentData.Add(agentDataMap);
            body.Add("AgentData", agentData);

            OSDArray groupData = new OSDArray();

            foreach (AgentGroupDataUpdatePacket.GroupDataBlock groupDataBlock in groupUpdatePacket.GroupData)
            {
                OSDMap groupDataMap = new OSDMap();
                groupDataMap.Add("ListInProfile", OSD.FromBoolean(false));
                groupDataMap.Add("GroupID", OSD.FromUUID(groupDataBlock.GroupID));
                groupDataMap.Add("GroupInsigniaID", OSD.FromUUID(groupDataBlock.GroupInsigniaID));
                groupDataMap.Add("Contribution", OSD.FromInteger(groupDataBlock.Contribution));
                groupDataMap.Add("GroupPowers", OSD.FromBinary(ulongToByteArray(groupDataBlock.GroupPowers)));
                groupDataMap.Add("GroupName", OSD.FromString(Utils.BytesToString(groupDataBlock.GroupName)));
                groupDataMap.Add("AcceptNotices", OSD.FromBoolean(groupDataBlock.AcceptNotices));

                groupData.Add(groupDataMap);

            }

            return new EventQueueEvent("GroupData", body);

            //body.Add("GroupData", groupData);
            //groupUpdate.Add("body", body);

            //return groupUpdate;
        }