@Zestr

Как обрабатывать второй ответ, не выходя из цикла?

Всем привет. Решил написал своего бота, но столкнулся с проблемой. Вот кусок кода
public void onUpdateReceived(Update update)
    if (message != null && message.hasText()) {
                    switch (message.getText()) {
                        case "/start":
    sendMsg(message, "Hi!");
                            System.out.println(message.getText());
                            break;
    case "partial":
                            sendMsg(message, "starting \ninput number");
                            while(true){
                           
                            if(update.getCallbackQuery().getMessage().getText().equals(g)) {
                                
                                sendMsg(message,"ok, go");
                                try {
                                    Scraper.scrape(partial);
                                } catch (IOException e) {
                                    e.printStackTrace();
                                }
                            break;}}
                            System.out.println(message.getText());
                            break;


Проблема в том, что когда я только начинаю разговаривать с ботом и пишу ему первое сообщение, скажем partial, но я хочу настроить логику и для второго ответа, скажем партил это проект, а дальше у меня бот должен спрашивать - "ок, какую версию запускаем", и вот когда я отвечаю на второй вопрос, он снова начинает идти по свитчу и сравнивать кейсы, как настроить несколько уровней общения ?
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Использовать конечный автомат.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ростов-на-Дону
от 100 000 до 180 000 ₽
от 150 000 до 200 000 ₽
от 80 000 ₽