Аукцион
Last updated
Last updated
Чат-бот предназначен для автоматического проведения аукционов - он принимает ставки, контролирует сумму ставок, время и оглашает победителей.
Посмотрим, как он работает, на скриншотах:
Ставки принимаются, бот понимает, когда поставили большую ставку, и уже ведет отсчёт по ней. Идём дальше)
Для тестовой демонстрации бота мы снизили таймеры отсчёта ставок до 20 секунд. И, как мы видим, если в течении определённого времени ставку не перебили, бот объявляет победителя. И те, которые ставят ставки после объявления победителя, уведомляются об этом.
Но что если нужно отследить размер ставки, чтобы она была минимум на 10 рублей больше, чем предыдущая? Бот и это может!
Готовую схему данного чат-бота можно найти во вкладке "Шаблоны", которая расположена на странице выбора чат-ботов. С ней мы и будем работать в рамках этой статьи.
После выбора шаблона нам откроется сам бот. Возможно, он покажется вам большим и сложным, но на самом деле это не так. К каждому из блоков написаны емкие и информативные заметки, так что в его понимании у вас не должно возникать проблем.
Для начала работы с шаблоном нажимаем кнопку "Скопировать этот шаблон" и выбираем сообщество, в которое его нужно скопировать. После этого он появится во вкладке "Остановленные". Перед запуском самого чат-бота нам нужно отредактировать его.
Работает наш чат-бот в комментариях под определённым постом, поэтому первым делом нам нужно указать пост, в котором он должен работать. Для этого проставляем ID нужного поста в блоке "Условие".
ID поста можно получить из адресной строки, это последние цифры после нижнего подчеркивания.
Теперь перейдём в настройки бота на сервисе. Нам необходимо, чтобы бот был запущен и перед каждым запуском значения переменных из прошлых запусков аукциона были очищены. Для этого и нужны блоки "Шаг 23" и "Шаг 24". В заметке из этого шаблона подробно описано, что нужно сделать с этими блоками.
Перейдем к механике приема ставок. Она построена на работе с глобальной переменной. То есть, пользователь пишет число, оно записывается в глобальную переменную, и все дальнейшие ставки сверяются по ней с учетом минимального шага ставки. Если условия удовлетворительны, новая ставка заменяет старую, и так до объявления победителя.
Разберём блоки поподробнее. "Шаг 4" нужен для фильтрации ставок от остальных комментариев. Благодаря регулярному выражению этот блок "Условие" пропустит только цифровые комментарии! "Шаг 25" уведомит пользователей, что бот понимает только комментарии со ставками. "Шаг 2" фильтрует ставки, которые меньше предыдущей. "Шаг 11" уведомляет, что пользователь поставил ставку меньше предыдущей. Связка "Шаг 22" и "Шаг 9" проверяет шаг ставки. "Шаг 10" уведомляет пользователя, если он постав ставку с меньшим шагом. "Шаг 3" перезаписывает последнюю ставку, если все условия соблюдены. "Шаг 20" проверяет, закончен ли аукцион. "Шаг 21" уведомляет пользователя, что аукцион закончен.
"Шаг 6", "Шаг 14" и "Шаг 30" уведомляют пользователя об отсчёте и победе. "Шаг 7" и "Шаг 13" - таймеры, которые считают время между уведомлениями. "Шаг 8" и "Шаг 15" проверяют, была ли перебита ставка. "Шаг 12" уведомляет пользователя, в случае если ставку перебили. "Шаг 19" завершает аукцион для бота, чтобы условие из "Шага 2" не выполнилось.
Вот и всё! Мы разобрали все блоки, вам остается лишь адаптировать бота под себя, написать подходящие тексты и выставить таймеры!
На этом настройка данного чат-бота завершается. Желаем удачи в изучении чат-ботов