void AddMessage(IEnumerable <PowerAgregator.Message> msgs, ChatterUser user) { if (CurrentUser != null && (CurrentUser == user || CurrentUser == user.AgregatorUser)) { listMessages.Items.AddRange(msgs.ToArray()); } else { if (user.AgregatorUser != null) { foreach (ListViewItem item in listAgregatorContacts.Items) { if (item.Tag == user.AgregatorUser) { item.Font = new Font(item.Font, FontStyle.Bold); } } } else { foreach (ListViewItem item in listChattersContacts.Items) { if (item.Tag == user) { item.Font = new Font(item.Font, FontStyle.Bold); } } } } }
public static void SaveMessages(ChatterUser user) { db.Messages.RemoveRange(db.Messages.Where(x => x.UserId == user.UserId)); db.Messages.AddRange(user.Messages.Select((x, i) => { var c = x.StoreData(); c.Id += i.ToString(); return(c); })); db.SaveChanges(); }
public IEnumerable <Message> GetChatForUser(ChatterUser user, int skipCount) { int id = 0; if (DecomposeId(user.UserId, out id) == this.user.AccessHash) { return(new List <Message>()); } var z = new Thread(() => { Thread.CurrentThread.IsBackground = true; /* run your code here */ AGetHistory(user, skipCount); Task.Delay(1000).Wait(); }); z.Start(); z.Join(); if (Messages is TLMessagesSlice) { var msgs = (TLMessagesSlice)Messages; var result = msgs.Messages.Select(x => { var msg = (TLMessage)x; return(new Message(user) { Time = ZeroTDate.AddSeconds(msg.Date), Recived = !msg.Out, Text = msg.Message }); }); return(result); } else { var msgs = (TLMessages)Messages; var result = msgs.Messages.Select(x => { var msg = (TLMessage)x; return(new Message(user) { Time = ZeroTDate.AddSeconds(msg.Date), Recived = !msg.Out, Text = msg.Message }); }); return(result); } //ZeroTDate.AddSeconds(((res as TLMessages).Messages[0] as TLMessage).Date) }
public async void AGetHistory(ChatterUser user, int skipCount) { int id = 0; long hash = DecomposeId(user.UserId, out id); try { Messages = await client.GetHistoryAsync(new TLInputPeerUser() { UserId = id, AccessHash = hash }, skipCount, 0, 0); } catch (Exception ex) { Messages = new TLMessagesSlice(); } }
public bool SendMessage(ref Message message) { message.Recived = false; string msgText = message.Text; ChatterUser msgUser = message.User; if (msgText.StartsWith("reply", StringComparison.InvariantCultureIgnoreCase)) { msgText = msgText.Substring(6); new Task(() => { Task.Delay(5000).Wait(); MessageRecived?.Invoke(new Message[] { new Message(msgUser) { Recived = true, Time = DateTime.Now.AddSeconds(5), Text = "Thanks for: " + msgText } }, msgUser); }).Start(); } return(true); }
public static void LoadMessages(ChatterUser user) { user.Messages = db.Messages.Where(x => x.UserId == user.UserId).ToList().Select(x => new Message(x, user)).ToList(); }
public byte[] GetImage(ChatterUser user) { throw new NotImplementedException(); }
public IEnumerable <Message> GetChatForUser(ChatterUser user) { return(GetChatForUser(user, 0)); }
public IEnumerable <Message> GetChatForUser(ChatterUser user) { var Result = new Message[] { new Message(user) { Recived = false, Text = "Dialog Start!", Time = new DateTime(2017, 12, 10, 10, 10, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Message 1!", Time = new DateTime(2017, 12, 10, 10, 12, int.Parse(user.UserId)) }, new Message(user) { Recived = false, Text = "Message 2!", Time = new DateTime(2017, 12, 10, 10, 14, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Bye bye!", Time = new DateTime(2017, 12, 10, 10, 17, int.Parse(user.UserId)) }, new Message(user) { Recived = false, Text = "Dialog Start 2!", Time = new DateTime(2017, 12, 11, 10, 10, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Message 1!", Time = new DateTime(2017, 12, 11, 10, 12, int.Parse(user.UserId)) }, new Message(user) { Recived = false, Text = "Message 2!", Time = new DateTime(2017, 12, 11, 10, 14, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Bye bye 2!", Time = new DateTime(2017, 12, 11, 10, 17, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Dialog Start 3!", Time = new DateTime(2017, 12, 11, 11, 10, int.Parse(user.UserId)) }, new Message(user) { Recived = false, Text = "Message 1!", Time = new DateTime(2017, 12, 11, 11, 12, int.Parse(user.UserId)) }, new Message(user) { Recived = true, Text = "Message 2!", Time = new DateTime(2017, 12, 11, 11, 14, int.Parse(user.UserId)) }, new Message(user) { Recived = false, Text = "Bye bye 3!", Time = new DateTime(2017, 12, 11, 11, 17, int.Parse(user.UserId)) } }; foreach (Message msg in Result) { msg.Time = msg.Time.AddHours(-7).AddMinutes(2); } return(Result); }
public IEnumerable <Message> GetChatForUser(ChatterUser user, int LastMessage) { throw new NotImplementedException(); }