public async Task ExecuteAsync(BotUpdateInput input) { string message = input.Message.Text.Trim(); message = message.Replace((message + " ").Split(' ')[0], string.Empty).Trim(); List <string> values = message.Contains(" ") ? message.Split(' ').ToList() : new List <string>() { message }; UserEntity user = _userRepository.FindUser(input.Message.Chat.Id.ToString()); if (user == null) { user = new UserEntity(); } user.ChatId = input.Message.Chat.Id.ToString(); user.Username = input.Message.From.Username; user.FirstName = input.Message.From.FirstName; user.LastName = input.Message.From.LastName; if (values[0] != "normal!123" && values[0] != "admin!123") { await _messageService.SendMessageAsync(input.Message.Chat.Id.ToString(), "Invalid key!"); } if (values[0] == "normal!123") { user.Type = UserTypeEnum.Normal; } else if (values[0] == "admin!123") { user.Type = UserTypeEnum.Admin; } if (string.IsNullOrEmpty(user.Id)) { _userRepository.InsertUser(user); } else { _userRepository.UpdateUser(user); } _socketServiceManager.UpdateUsers(); await _messageService.SendMessageAsync(user.ChatId, "Success!"); var admins = _userRepository.FindUsers().Where(x => x.Type == UserTypeEnum.Admin); foreach (var admin in admins) { await _messageService.SendMessageAsync(admin.ChatId, $"{input.Message.From.Username} is added to users!"); } }
public async Task StartAsync() { try { await Task.Run(() => { _socketServiceManager.UpdateSymbols(); _socketServiceManager.UpdatePrices(); _socketServiceManager.UpdateUsers(); _socketServiceManager.UpdateSubscriptions(); _socketServiceManager.UpdateAlerts(); _socketServiceManager.SubscribeAll(); }); } catch (Exception ex) { Console.WriteLine(ex); } }