- Регистрация
- 30.05.2019
- Сообщения
- 3 518
- Благодарностей
- 1 316
- Баллы
- 113
Всем доброго времени. Посоветуйте, пожалуйста. Создал допустим я телеграм бот и через
Бот: Ваше Имя?
- Человек отвечает: Иван
Бот: Отправьте мне ваш URL
- Человек отвечает: https://zennolab.com/
Бот:
Верно ли я записал ваши данные?
Имя: Иван
URL: https://zennolab.com/
И дальше уже бот выставляет две кнопки - Да - Нет.
Тут вопрос вот в чем. Если запустить такого бота, то в общение с одним человеком, еще куда не шло, т.е. бот задает вопрос и ждет от него ответ на этапе вопроса, который задал, но как быть, если пишут параллельно несколько человек боту, и у каждого может быть свой этап вопроса от бота, допустим для Пользователя (Андрей) - вопрос про Имя, для пользователя (Юрий) - вопрос про ссылку и в результате мы получаем, что каждому вопрос мы задали, но как контролировать, кто из пользователей и на какой вопрос ответил в данный момент, что бы потом оперативно боту продолжить задавать последовательные вопросы? Т.е. боту нужно понимать, что сейчас он ждет от Пользователя (Андрея) на протяжении 12 часов именно имя, а не ссылку или что-то еще, а от пользователя (Юрия) мы 12 часов ждем именно ссылку, а не имя и т.д?
В голову приходит только 1 вариант, это в блокноте или в базе данных хранить последний этап общения с пользователем и когда пользователь что-то напишет, мы по его user_id сверяем что же он последний раз спрашивал и тогда соответственно отталкиваясь от этого - будет отвечать.
getUpdates?offset
получаю последние сообщения от пользователей. После того, как боту кто-то напишет, либо нажмет на заготовленные кнопки в боте, бот делает определенные действия и отвечает человеку. А как быть, если допустим бот настроен на многопоточную обработку сообщений и для приема заданий от пользователей, им (пользователям) нужно оставить определенные данные. Допустим, человек нажал кнопку в боте - заказать услугу. Бот в ответ задает перечень вопросов, на которые человек должен ответить, например:Бот: Ваше Имя?
- Человек отвечает: Иван
Бот: Отправьте мне ваш URL
- Человек отвечает: https://zennolab.com/
Бот:
Верно ли я записал ваши данные?
Имя: Иван
URL: https://zennolab.com/
И дальше уже бот выставляет две кнопки - Да - Нет.
Тут вопрос вот в чем. Если запустить такого бота, то в общение с одним человеком, еще куда не шло, т.е. бот задает вопрос и ждет от него ответ на этапе вопроса, который задал, но как быть, если пишут параллельно несколько человек боту, и у каждого может быть свой этап вопроса от бота, допустим для Пользователя (Андрей) - вопрос про Имя, для пользователя (Юрий) - вопрос про ссылку и в результате мы получаем, что каждому вопрос мы задали, но как контролировать, кто из пользователей и на какой вопрос ответил в данный момент, что бы потом оперативно боту продолжить задавать последовательные вопросы? Т.е. боту нужно понимать, что сейчас он ждет от Пользователя (Андрея) на протяжении 12 часов именно имя, а не ссылку или что-то еще, а от пользователя (Юрия) мы 12 часов ждем именно ссылку, а не имя и т.д?
В голову приходит только 1 вариант, это в блокноте или в базе данных хранить последний этап общения с пользователем и когда пользователь что-то напишет, мы по его user_id сверяем что же он последний раз спрашивал и тогда соответственно отталкиваясь от этого - будет отвечать.