public KeyboardService(RequestRecognizer requestRecognizer) { _keyboards = new Dictionary <Keyboard, ReplyMarkupBase> { [Keyboard.None] = new ReplyKeyboardRemove() { Selective = true }, [Keyboard.Backward] = new ReplyKeyboardMarkup { Keyboard = new KeyboardButton[][] { new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.Backward)), }, }, ResizeKeyboard = true }, [Keyboard.StartMenu] = new ReplyKeyboardMarkup { Keyboard = new KeyboardButton[][] { new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.CreateGroup)), }, new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.JoinGroup)) }, }, ResizeKeyboard = true }, [Keyboard.CreateGroup] = new ReplyKeyboardMarkup { Keyboard = new KeyboardButton[][] { new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.CreateGroup)), }, }, ResizeKeyboard = true }, [Keyboard.GroupMenu] = new ReplyKeyboardMarkup { Keyboard = new KeyboardButton[][] { new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.LeaveGroup)), }, new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.WatchFullSchedule)), }, new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.WatchScheduleOnTomorrow)), }, new KeyboardButton[] { new KeyboardButton(requestRecognizer.GetMessage(RequestType.WatchScheduleOnToday)), }, }, ResizeKeyboard = true } }; }
public TelegramMessageHandler(DataProvider dataProvider, RequestRecognizer requestRecognizer, TelegramMessageSender telegramMessageSender) { _dataProvider = dataProvider ?? throw new ArgumentNullException(nameof(dataProvider)); _requestRecognizer = requestRecognizer ?? throw new ArgumentNullException(nameof(requestRecognizer)); _telegramMessageSender = telegramMessageSender ?? throw new ArgumentNullException(nameof(telegramMessageSender)); }