示例#1
0
    public static void SendMessage(AjaxChatMessage message)
    {
        AjaxChat c = GetChatObject(message.WebMemberIDTo);

        c.Messages.Add(message);
        c.Token = Next2Friends.Misc.UniqueID.NewWebID();
    }
示例#2
0
    private void AddMessageToLast10Message(AjaxChatMessage msg)
    {
        //Check if the message already exists
        IList <AjaxChatMessage> msgs = (from m in Last10Messages
                                        where m.ChatMessageWebID == msg.ChatMessageWebID
                                        select m).ToList <AjaxChatMessage>();

        if (msgs.Count > 0)
        {
            return;
        }

        Last10Messages.Add(msg);

        msgs = (from m in Last10Messages
                where m.WebMemberIDFrom == msg.WebMemberIDFrom
                &&
                m.WebMemberIDTo == msg.WebMemberIDTo
                orderby m.DTCreated descending
                select m).ToList <AjaxChatMessage>();

        for (int i = 10; i < msgs.Count; i++)
        {
            Last10Messages.Remove(msgs[i]);
        }
    }
示例#3
0
    public int SendMessage(string messages)
    {
        string[] msgArray = messages.Split(new char[] { ';' });
        List <AjaxChatMessage> ajaxChtMsgs = new List <AjaxChatMessage>();

        foreach (string msg in msgArray)
        {
            string [] singleMsg = msg.Split(new char[] { ',' });

            if (singleMsg.Length < 2)
            {
                continue;
            }

            string WebMemberIDTo = singleMsg[0];
            string Message       = singleMsg[1];
            Member member        = (Member)HttpContext.Current.Session["Member"];
            int    MemberID      = member.MemberID;

            Member memberTo = Member.GetMemberViaWebMemberID(WebMemberIDTo);

            AjaxChatMessage ajaxMsg = new AjaxChatMessage();

            ajaxMsg.ChatMessageWebID = Next2Friends.Misc.UniqueID.NewWebID();
            ajaxMsg.Delivered        = false;
            ajaxMsg.DTCreated        = DateTime.Now;
            ajaxMsg.Message          = Message;
            ajaxMsg.MemberIDFrom     = MemberID;
            ajaxMsg.WebMemberIDFrom  = member.WebMemberID;
            ajaxMsg.Retrieved        = false;
            ajaxMsg.WebMemberIDTo    = WebMemberIDTo;
            ajaxMsg.MemberIDTo       = memberTo.MemberID;
            ajaxMsg.Outbound         = 1;

            try
            {
                ChatLogic.SendMessage(ajaxMsg);
            }
            catch { }

            ajaxChtMsgs.Add(ajaxMsg);

            InitLast10Messages();
            AddMessageToLast10Message(ajaxMsg);

            PersistLast10Messages();
        }

        ParameterizedThreadStart ts = new ParameterizedThreadStart(SaveMessageDB);
        Thread t = new Thread(SaveMessageDB);

        t.Priority = ThreadPriority.BelowNormal;
        t.Start(ajaxChtMsgs);

        return(0);
    }
示例#4
0
    private static void GetMessagesFromDB(Member member)
    {
        List <ChatMessage> messageList = ChatMessage.GetNewChatMessageByMemberID(member.MemberID);

        foreach (ChatMessage msg in messageList)
        {
            AjaxChatMessage ajaxMsg = new AjaxChatMessage();

            ajaxMsg.ChatMessageWebID = msg.ChatMessageWebID;
            ajaxMsg.Delivered        = msg.Delivered;
            ajaxMsg.DTCreated        = msg.DTCreated;
            ajaxMsg.Message          = msg.Message;
            ajaxMsg.MemberIDFrom     = msg.MemberIDFrom;
            ajaxMsg.WebMemberIDFrom  = msg.WebMemberIDFrom;
            ajaxMsg.MemberIDTo       = member.MemberID;
            ajaxMsg.Outbound         = 0;
            ajaxMsg.Retrieved        = msg.Delivered;
            ajaxMsg.WebMemberIDTo    = member.WebMemberID;
            SendMessage(ajaxMsg);
        }
    }
示例#5
0
    private void AddMessageToLast10Message(AjaxChatMessage msg)
    {
        //Check if the message already exists
        IList<AjaxChatMessage> msgs = (from m in Last10Messages
                                       where m.ChatMessageWebID == msg.ChatMessageWebID
                                       select m).ToList<AjaxChatMessage>();

        if (msgs.Count > 0)
            return;
        
        Last10Messages.Add(msg);

        msgs = (from m in Last10Messages
                                       where m.WebMemberIDFrom == msg.WebMemberIDFrom
                                       &&
                                       m.WebMemberIDTo == msg.WebMemberIDTo
                                       orderby m.DTCreated descending
                                       select m).ToList<AjaxChatMessage>();

        for (int i = 10; i < msgs.Count; i++)
        {
            Last10Messages.Remove(msgs[i]);
        }
    }
示例#6
0
 public static void SendMessage(AjaxChatMessage message )
 {
     AjaxChat c = GetChatObject(message.WebMemberIDTo);
     c.Messages.Add(message);
     c.Token = Next2Friends.Misc.UniqueID.NewWebID();
 }
示例#7
0
    private static void GetMessagesFromDB(Member member)
    {
        List<ChatMessage> messageList = ChatMessage.GetNewChatMessageByMemberID(member.MemberID);        

        foreach (ChatMessage msg in messageList)
        {
            AjaxChatMessage ajaxMsg = new AjaxChatMessage();

            ajaxMsg.ChatMessageWebID = msg.ChatMessageWebID;
            ajaxMsg.Delivered = msg.Delivered;
            ajaxMsg.DTCreated = msg.DTCreated;
            ajaxMsg.Message = msg.Message;
            ajaxMsg.MemberIDFrom = msg.MemberIDFrom;
            ajaxMsg.WebMemberIDFrom = msg.WebMemberIDFrom;
            ajaxMsg.MemberIDTo = member.MemberID;
            ajaxMsg.Outbound = 0;
            ajaxMsg.Retrieved = msg.Delivered;
            ajaxMsg.WebMemberIDTo = member.WebMemberID;
            SendMessage(ajaxMsg);
        }
    }
示例#8
0
    public int SendMessage(string messages)
    {
        string[] msgArray = messages.Split(new char[] { ';' });
        List<AjaxChatMessage> ajaxChtMsgs = new List<AjaxChatMessage>();

        foreach (string msg in msgArray)
        {
            string []singleMsg = msg.Split(new char[]{','});

            if (singleMsg.Length < 2)
                continue;

            string WebMemberIDTo = singleMsg[0];
            string Message = singleMsg[1];
            Member member = (Member)HttpContext.Current.Session["Member"];
            int MemberID = member.MemberID;

            Member memberTo = Member.GetMemberViaWebMemberID(WebMemberIDTo);

            AjaxChatMessage ajaxMsg = new AjaxChatMessage();

            ajaxMsg.ChatMessageWebID = Next2Friends.Misc.UniqueID.NewWebID();
            ajaxMsg.Delivered = false;
            ajaxMsg.DTCreated = DateTime.Now;
            ajaxMsg.Message = Message;
            ajaxMsg.MemberIDFrom = MemberID;
            ajaxMsg.WebMemberIDFrom = member.WebMemberID;
            ajaxMsg.Retrieved = false;
            ajaxMsg.WebMemberIDTo = WebMemberIDTo;
            ajaxMsg.MemberIDTo = memberTo.MemberID;
            ajaxMsg.Outbound = 1;

            try
            {
                ChatLogic.SendMessage(ajaxMsg);
            }
            catch { }

            ajaxChtMsgs.Add(ajaxMsg);

            InitLast10Messages();
            AddMessageToLast10Message(ajaxMsg);

            PersistLast10Messages();
        }

        ParameterizedThreadStart ts = new ParameterizedThreadStart(SaveMessageDB);
        Thread t = new Thread(SaveMessageDB);
        t.Priority = ThreadPriority.BelowNormal;
        t.Start(ajaxChtMsgs);
        
        return 0;
    }