Как сделать ожидание сообщения от пользователя в VK(бот на php)?
Здравствуйте, я новичок в разработке ботов для ВК. У меня появилась проблема, после определённого сообщения, бот должен ожидать ответ от пользователя(при этом этот ответ должен записываться в переменную(но это я и сам могу сделать)). Я прочитал документацию про Long Poll Api, но всё равно не смог реализовать поставленную задачу.
Что-бы было понятнее про что я, приведу пример: допустим, что у нас некая рулетка. Бот пишет: "Введите ставку." И после этого он должен ожидать ответ пользователя, который и будет являться ставкой.
Как это реализовать? Если не сложно, можете пожалуйста привести пример кода для этого. Заранее благодарю!
с ботами давно не работал, но в свое время самый оптимальный способ был - представление работы бота как обычного веб-сайта.
условно в таблице юзеров создаешь колонку "location" и от этого отталкиваешься.
тобишь написал человек в первый раз - значит в location он на "главной". тобишь вписываешь "/"
заходит он на твои ставки - вписываешь "/bet"
т.е. если человек сейчас находится на "/bet" и он что-то написал - значит он сделал ставку. так и обрабатываешь.
логика, надеюсь, ясна.
Добрый день, да, я понял Вашу идею, задумка довольно интересная. Попробую так сделать, буду после каждого события message_new проверять, где находится данный пользователь, если получится, скину код того, как это сделал.
OwerFan я записывал в БД локацию, где находится пользователь, и потом уже проверял при полученном сообщении, что написано в БД, из этого и делал вывод, как его обрабатывать.
То есть у меня были в коде отдельные обработчики событий, происходивших на конкретных локациях.
BotTimofey, может быть у вас было такое, что нужно отправить значение через кнопки? то есть можно нажать ентер для того, чтобы отправить сообщение, а как сделать чтобы при нажатии на клавиатуре кнопки отправить, сообщение введенное в поле отправлялось? у меня так сделано, что при нажатии на кнопку на клавиатуре бота отправляется ее надпись, т.е. нажжимаешь кнопку на клавиатуре отправить, отправляется сообщение боту отправить. Можно вам вопрос в телегу этот написать если не очень понятно сформулировал?