private void HandleCustomerMessage(Update update, SubscriberRecord customer) { switch (update.Message.Text) { case StateManager.Keyboards.StartCommand: const string defaultWelcomeMessage = "Welcome to your support!\nWe never leave you alone😊"; TelegramClient.SendTextMessageAsync(customer.ChatId, SettingRepo.GetWelcomeMessage() ?? defaultWelcomeMessage, replyMarkup: StateManager.GetCustomerReplyKeyboardMarkup(customer)); break; case StateManager.Keyboards.ConnectCommand: WaitingManager.AddToQueue(customer); break; case StateManager.Keyboards.CancelCommand: WaitingManager.Cancel(customer); break; case StateManager.Keyboards.DisconnectCommand: ConnectionManager.Disconnect(customer); break; default: ConnectionManager.Direct(customer, update); break; } }
public SupportBotInstance( WaitingManager waitingManager, SupporterRepo supporterRepo, SettingRepo settingRepo, ConnectionManager connectionManager, StateManager stateManager, ITelegramBotClient telegramClient) { WaitingManager = waitingManager; SupporterRepo = supporterRepo; SettingRepo = settingRepo; ConnectionManager = connectionManager; StateManager = stateManager; TelegramClient = telegramClient; }