private async Task <Activity> HandleSystemMessage(Activity message)
        {
            if (message.Type == ActivityTypes.DeleteUserData)
            {
                // Implement user deletion here
                // If we handle user deletion, return a real message
            }

            else if (message.Type == ActivityTypes.ConversationUpdate)
            {
                using (var repository = new ChatBotRepository <User>())
                {
                    if (message.MembersAdded != null && message.MembersAdded.Any() && !(message.MembersAdded.Any(x => x.Name == "Bot") && message.MembersAdded.Count == 1))
                    {
                        await GenerateWelcomeMessage(message);

                        List <User> members = new List <User>();
                        foreach (var user in message.MembersAdded)
                        {
                            repository.Create(new User
                            {
                                ToId           = user.Id,
                                ToName         = user.Name,
                                FromId         = message.Recipient.Id,
                                FromName       = message.Recipient.Name,
                                ServiceUrl     = message.ServiceUrl,
                                ChannelId      = message.ChannelId,
                                ConversationId = message.Conversation.Id,
                            });
                        }
                    }

                    if (message.MembersRemoved != null && message.MembersRemoved.Any())
                    {
                        var members = repository.GetCollection.Where(x => x.ConversationId == message.Conversation.Id)
                                      .Where(x => message.MembersRemoved.FirstOrDefault(y => y.Name == x.ToName) != null);
                        foreach (var user in members)
                        {
                            repository.Remove(user);
                        }
                    }
                }
            }
            else if (message.Type == ActivityTypes.ContactRelationUpdate)
            {
                // Handle add/remove from contact lists
                // Activity.From + Activity.Action represent what happened
                //await Conversation.SendAsync(message, () => new WelcomeDialog());
            }
            else if (message.Type == ActivityTypes.Typing)
            {
                // Handle knowing tha the user is typing
            }
            else if (message.Type == ActivityTypes.Ping)
            {
            }

            return(null);
        }
        private string RemoveMediaElementFromDatabase(string name)
        {
            int?mediaItemId;

            using (var repository = new ChatBotRepository <User>())
            {
                mediaItemId = repository.GetSender(_user.ConversationId, _user.ToName).MediaElements.FirstOrDefault(x => x.Name == name)?.Id;
            }

            using (var repository = new ChatBotRepository <MediaElement>())
            {
                if (mediaItemId == null)
                {
                    return("Упс, но такого файла нет в базе");
                }

                var mediaItem = repository.FindById((int)mediaItemId);
                repository.Remove(mediaItem);

                return("Удаление прошо успешно, поздравляю(party)");
            }
        }