public void ConversationMemberStatusChanged(long conversationId, ConversationMemberStatus status) { var conv = chatCallbackModel.Conversations.FirstOrDefault(x => x.Id == conversationId); if (conv != null) { conv.MyStatus = status; //var reply = new ConversationReply() { Author = whoChangedLogin, ConversationId=conversationId, SendingTime= DateTimeOffset.Now, Status= ConversationReplyStatus.Received }; //switch (status) //{ // case ConversationMemberStatus.Blocked: // reply.Body = $"{whoChangedLogin} blocked me in conversation"; // break; // case ConversationMemberStatus.KickedOut: // reply.Body = $"{whoChangedLogin} kicked me out from conversation"; // break; // default: // reply.Body = $"{whoChangedLogin} change my status to - {status}"; // break; //} //conv.Messages.Add(reply); } }
public async static void ConversationMemberStatusChanged(long userChange, long conversationId, ConversationMemberStatus status) { if (OnlineUsers.TryGetValue(userChange, out ServiceImplementation.ChatServiceProvider provider)) { await Task.Run(() => provider?.Callback.ConversationMemberStatusChanged(conversationId, status)); } }