public void Execute(Message message) { if (!Utils.BotTools.IsUserOperator(message.From.Id, Models.Operator.Levels.Basic) && !Utils.ChatTools.IsUserAdmin(message.Chat.Id, message.From.Id)) { MessageQueueManager.EnqueueMessage( new Models.ChatMessage() { Timestamp = DateTime.UtcNow, Chat = message.Chat, Text = CacheData.GetTranslation("en", "addsafe_command_error_notadmin") }); return; } string url = message.Text.Split(" ")[1].Trim(); if (url.StartsWith("@")) { url = "https://t.me/" + message.Text.Split(" ")[1].Remove(0, 1); } else if (url.StartsWith("t.me/")) { url = "https://" + url; } if (!Controls.Manager.IsTelegramLink(url)) { MessageQueueManager.EnqueueMessage( new Models.ChatMessage() { Timestamp = DateTime.UtcNow, Chat = message.Chat, Text = CacheData.GetTranslation("en", "addsafe_command_error_invalidgroupname") }); return; } BusinessLogic.Group.SafeGroupLogic safeGroupLogic = new BusinessLogic.Group.SafeGroupLogic(); Models.Group.SafeGroup safeGroup = safeGroupLogic.Add( CacheData.Groups[message.Chat.Id].GroupId, url, -2); if (safeGroup == null) { MessageQueueManager.EnqueueMessage( new Models.ChatMessage() { Timestamp = DateTime.UtcNow, Chat = message.Chat, Text = CacheData.GetTranslation("en", "addsafe_command_error_general") }); return; } string confirmationMessage = CacheData.GetTranslation("en", "addsafe_command_success"); MessageQueueManager.EnqueueMessage( new Models.ChatMessage() { Timestamp = DateTime.UtcNow, Chat = message.Chat, Text = confirmationMessage.Replace("{{groupname}}", message.Text.Split(" ")[1].Trim()) }); Filters.SafeGroupFilter.LoadCache(); }