コード例 #1
0
 public Message(MessageData data, ChatterUser user)
 {
     this.Recived = data.Recived;
     this.Text    = data.Text;
     this.Time    = data.Date;
     this.User    = user;
 }
コード例 #2
0
ファイル: Core.cs プロジェクト: ASIXz/PowerAggregator
        public void AddUser(ChatterUser source, string id)
        {
            var destination = new AgregatorUser(id);

            Users.Add(destination);

            AddUser(source, destination);
        }
コード例 #3
0
ファイル: Core.cs プロジェクト: ASIXz/PowerAggregator
 public IEnumerable <Message> GetChatMessages(ChatterUser user)
 {
     if (user.Messages == null || user.Messages.Count() == 0)
     {
         var chatter = user.Chatter;
         user.Messages = chatter.GetChatForUser(user).ToList();
     }
     return(user.Messages);
 }
コード例 #4
0
ファイル: Core.cs プロジェクト: ASIXz/PowerAggregator
        public void SendMessage(ChatterUser user, string message)
        {
            Message msg = new Message(user)
            {
                Time = DateTime.Now, Text = message, Recived = false
            };

            if (user.Chatter.SendMessage(ref msg))
            {
                AddMessage(new Message[] { msg }, user);
            }
        }
コード例 #5
0
ファイル: Core.cs プロジェクト: ASIXz/PowerAggregator
 public void AddMessage(IEnumerable <Message> messages, ChatterUser user)
 {
     if (user.AgregatorUser != null)
     {
         if (messages.Any(x => x.Recived))
         {
             user.AgregatorUser.ActiveDialog = user;
             user.AgregatorUser.DialogExpire = DateTime.Now + user.ResponseTime;
         }
         else
         {
             //if first output message
             if (user.AgregatorUser.ActiveDialog == user && user.Messages.Last().Recived)
             {//no update StartTime, just doble existing waiting time;
                 user.AgregatorUser.DialogExpire += user.ResponseTime;
             }
         }
     }
     //user = ChatterUsers.First(x => x.UserId == user.UserId);
     user.Messages.AddRange(messages);
     MessageAdded?.Invoke(messages, user);
 }
コード例 #6
0
ファイル: Core.cs プロジェクト: ASIXz/PowerAggregator
 public void AddUser(ChatterUser source, AgregatorUser destination)
 {
     //ChatterUsers.Remove(source);
     destination.Chatters.Add(source);
     source.AgregatorUser = destination;
 }
コード例 #7
0
 public Message(ChatterUser user)
 {
     this.User = user;
 }