public void AddChatInfo(ChatInfoResponse info) { if (!info.IdProfiles.Any(x => x == MyProfile.Id)) { return; } var model = GetChat(info); model.Name = info.Name; foreach (var id in info.IdProfiles) { if (!_profiles.Any(x => x.Id == id)) { var request = new ProfileInfoRequest { Id = id }; _manager.ConnectionInspector.Send(request); } if (!model.Profiles.Any(x => x.Id == id)) { model.Profiles.AddSorted(GetProfile(id), x => x.Id); } } foreach (var id in info.IdMessages) { if (!model.Messages.Any(x => x.Id == id)) { var request = new MessageInfoRequest { Id = id }; _manager.ConnectionInspector.Send(request); } } }
public void AddMessageInfo(MessageInfoResponse info) { if (!Chats.Any(x => x.Id == info.IdChat)) { return; } var model = GetMessage(info); model.Text = info.Text; if (!_profiles.Any(x => x.Id == info.Id)) { var request = new ProfileInfoRequest { Id = info.IdProfile }; _manager.ConnectionInspector.Send(request); } var profile = GetProfile(info.IdProfile); model.Profile = profile; }
public override void Call(MyProfileInfoResponseLuck packet, IClientManager manager) { var myProfile = manager.MyProfile; if (myProfile == null) { return; } myProfile.MyProfile.Id = packet.Id; { var request = new ProfileInfoRequest { Id = packet.Id }; manager.ConnectionInspector.Send(request); } foreach (var id in packet.IdChats) { var request = new ChatInfoRequest { Id = id }; manager.ConnectionInspector.Send(request); } }