Как реализовать ожидание ответа пользователя Telegram Bot

Как реализовать ожидание ответа пользователя Telegram Bot.

  1. Жму на кнопку "Авторизоваться"
  2. Бот выводит "Введите ваше ФИО",
  3. Я записываю в файл ID диалога, и стадию вопроса.
  4. Если стадия "fio", то текст следующего сообщения это ФИО.

У меня ошибка в 4 пункте. Я вижу её, и понимаю, почему. Но я не понимаю, как сделать правильно.

if ($text == '/start') {
        TG::sendMessage($chatId, 'Здравствуйте!', [['Авторизоваться']]);
    }
    if ($text == 'Авторизоваться') {
        TG::sendMessage($chatId, 'Введите ваше ФИО');
        write($userId, 'stage', 'fio');
        $stage = read($userId, 'stage');
    };
    
    if ($stage == 'fio') {
        write($userId, 'fio', $text);
    }

Ответы (1 шт):

Автор решения: Qwertiy

Понятия не имею, что за функции write и read, но если предположить, что они работают нормально, то вот эту строку надо вынести из if'а:

$stage = read($userId, 'stage');
→ Ссылка