Beispiel #1
0
        /// <summary>
        /// Important to check the 'Updated' bool first. Returns the status string for a virtual buddy based on the statistics of the last call of 'Updated'.
        /// </summary>
        /// <param name="includeUsername">Specifies if to include the username in the string. Only required at first sending of packet in session of client.</param>
        internal FriendListArrayPacket BuddyPacket()
        {
            FriendListArrayPacket output = new FriendListArrayPacket();
            bool   Followable            = false;
            string onlineText;

            //containsUser
            if (UserManager.containsUser(userID))
            {
                onlineText = "online";
                if (UserManager.getUser(userID)._Room != null)
                {
                    Followable = true;
                }
            }
            else
            {
                onlineText = lastVisit;
            }
            output.I = userID;
            output.N = userName;
            output.M = mission;
            output.O = onlineText;
            output.F = Followable;
            return(output);
        }
Beispiel #2
0
        internal string getUpdates()
        {
            FriendListPacket FriendList = new FriendListPacket();

            FriendListArrayPacket[] Buddylist = new FriendListArrayPacket[Buddies.Count];
            int count = 0;

            foreach (Buddy Buddy in Buddies.Values)
            {
                Buddylist[count++] = Buddy.BuddyPacket();
            }
            FriendList.F = Buddylist;
            return(JsonConvert.SerializeObject(FriendList));
        }
Beispiel #3
0
        internal FriendListArrayPacket[] friendListInit()
        {
            int[] userIDs = UserManager.getUserFriendIDs(userID);
            FriendListArrayPacket[] Buddylist = new FriendListArrayPacket[userIDs.Length];
            Buddy Me = new Buddy(userID, User._Username, User._MessengerMission, "");

            for (int i = 0; i < userIDs.Length; i++)
            {
                string[] buddyInfo = MySQL.runReadRow("SELECT username, messenger, last_online FROM members WHERE id = '" + userIDs[i] + "'");
                Buddy    Buddy     = new Buddy(userIDs[i], buddyInfo[0], buddyInfo[1], buddyInfo[2]);
                try
                {
                    if (UserManager.containsUser(Buddy.userID))
                    {
                        UserManager.getUser(userIDs[i]).Messenger.addBuddy(Me);
                    }
                    Buddies.Add(userIDs[i], Buddy);
                }
                catch { }
                Buddylist[i] = Buddy.BuddyPacket();
            }
            return(Buddylist);
        }