Сделка НЕ создаётся без полного набора данных: имя + телефон + email + детали (дата, кол-во гостей)
Убраны кейсы, где одного телефона/email хватало
Добавлена секция «Поэтапный сбор данных»
Обновлён E2E сценарий
Добавлена секция 14 (формат ответов, DS-871)
0 pass
0 fail
/ 0
Окружение: Frontend: deploy-preview-795--chatplace-front.netlify.app ·
Backend: api-1698.review.chatplace.io ·
Юзер: 482@mail.com ·
Chrome на MI node · VPN через socks5
📝 Промпты для AI-агента copy-paste
1. 📋 Создавать сделку
Создавай сделку, когда клиент явно выражает намерение:
- забронировать столик («хочу забронировать», «есть свободные столики?»)
- заказать кейтеринг или организовать мероприятие
- оставить контакты («запишите мой телефон», «вот мой номер»)
- сделать заказ на доставку
Перед созданием сделки обязательно собери у клиента: имя, телефон, email и детали (дата, время, количество гостей). Спрашивай по одному вопросу за раз. Если каких-то данных не хватает — дозапроси. Если клиент отказывается давать телефон или email — сделку НЕ создавай.
Если клиент просто спрашивает о меню, ценах, локациях — НЕ создавай сделку, просто отвечай на вопрос.
2. 📋 Переводить → Переговоры
Переводи на этап «Переговоры», когда клиент:
- уточняет детали бронирования (дату, время, количество гостей)
- спрашивает о конкретном меню или спецпредложениях
- интересуется стоимостью кейтеринга или мероприятия
- сравнивает локации для выбора
НЕ переводить, если клиент:
- просто поздоровался или поблагодарил
- задаёт общий вопрос («а где вы находитесь?»)
- пишет не по теме ресторана
3. 📋 Переводить → Принимают решение
Переводи на этап «Принимают решение», когда клиент:
- подтверждает бронирование («да, бронируйте», «подтверждаю»)
- называет конкретную дату и время визита
- просит выставить счёт или спрашивает об оплате
- соглашается на предложенный вариант мероприятия/кейтеринга
- говорит о готовности прийти («придём в субботу», «будем у вас завтра»)
4. 📋 Обновлять данные в сделке
Обновляй данные в сделке, когда клиент:
- сообщает новый телефон или email
- меняет дату, время или количество гостей бронирования
- уточняет или меняет локацию ресторана
- добавляет особые пожелания (терраса, день рождения, детский стульчик, аллергии)
- меняет имя контактного лица
1. Создание сделки create_deal
✅ Позитивные — полный сбор данных → сделка
Агент всегда собирает: имя + телефон + email + детали (когда, сколько человек). Только после полного набора — создаёт сделку.
✓
✗
«Хочу забронировать столик на субботу» → бот спрашивает имя → телефон → email → кол-во гостей → время → создаёт сделку ИЗМЕНЕНО
✓
✗
«Можно заказать кейтеринг на 30 человек?» → поэтапный сбор данных → сделка
✓
✗
«Хотим организовать мероприятие на день рождения» → сбор данных → сделка
✓
✗
«Хочу заказать доставку на дом» → сбор данных → сделка
✓
✗
Клиент сразу даёт ВСЁ: «Анна, +66812345678, anna@mail.com, суббота 19:00, 4 человека» → сделка создаётся сразу НОВОЕ
🔄 Поэтапный сбор данных НОВОЕ
✓
✗
Клиент дал только телефон: «Запишите +66812345678» → бот дозапрашивает имя, email, детали. Сделка НЕ создаётся
✓
✗
Клиент дал телефон + email, но без деталей → бот дозапрашивает: когда, сколько, имя. Сделка НЕ создаётся
✓
✗
Клиент дал имя + телефон + email, но не сказал когда и сколько → бот дозапрашивает
✓
✗
Клиент отвечает на все вопросы бота по одному → после последнего → сделка создаётся
Клиент отказывается давать телефон → сделка НЕ создаётся, бот объясняет
❌ Негативные — сделка НЕ создаётся
✓
✗
«Какое у вас меню?» → просто отвечает, без сделки
✓
✗
«Где вы находитесь?» → информация о локации, без сделки
✓
✗
«Сколько стоит паста?» → ответ про цены, без сделки
✓
✗
«Привет!» → приветствие, без сделки
2. Перевод → «Переговоры» move_deal
✅ Позитивные
✓
✗
«Нас будет 8 человек, в пятницу вечером» → этап «Переговоры»
✓
✗
«Что входит в сет-меню на террасе?» → этап «Переговоры»
✓
✗
«Сколько стоит кейтеринг на 50 человек?» → этап «Переговоры»
✓
✗
«Какая из ваших локаций больше подходит для свадьбы?» → этап «Переговоры»
✓
✗
«Есть ли у вас спецпредложения на будни?» → этап «Переговоры»
❌ Негативные
✓
✗
«Привет!» → НЕ переводит
✓
✗
«Спасибо за информацию» → НЕ переводит
✓
✗
«А где вы находитесь?» → общий вопрос, НЕ переводит
3. Перевод → «Принимают решение» move_deal
✅ Позитивные
✓
✗
«Да, всё верно, бронируйте» (после обсуждения) → «Принимают решение»
✓
✗
«Подтверждаю на субботу 19:00, как обсуждали» → «Принимают решение»
✓
✗
«Выставите счёт за кейтеринг» → «Принимают решение»
✓
✗
«Подтверждаю, всё устраивает» → «Принимают решение»
❌ Негативные
✓
✗
«Ещё подумаю» → НЕ переводит
✓
✗
«Может быть на следующей неделе» → НЕ переводит
✓
✗
«Придём в субботу» (без предварительного обсуждения) → НЕ «Принимают решение», это «Переговоры»
4. Обновление данных в сделке update_deal
✅ Позитивные — данные обновляются
✓
✗
«Нас будет не 4, а 6 человек» → обновляет количество гостей
✓
✗
«Новый номер: +66899999999» → обновляет телефон
✓
✗
«Мой email: new@mail.com» → обновляет email
✓
✗
«Давайте лучше в локации на пляже» → обновляет локацию
✓
✗
«У одного гостя аллергия на орехи» → добавляет пожелание
✓
✗
«Перенесите на воскресенье, 18:00» → обновляет дату и время
✓
✗
«Бронирование на имя Александр» → обновляет контактное лицо
✓
✗
«Нужен детский стульчик и место на террасе» → добавляет пожелания
❌ Негативные — данные НЕ обновляются
✓
✗
«Спасибо, всё отлично» → ничего не обновляет (нет новых данных)
5. Одновременное срабатывание действий ПЕРЕРАБОТАНО
Агент теперь собирает все данные перед созданием. К моменту создания сделки в контексте уже будут детали. Вопрос: создаёт в «Первичный контакт» и потом переводит, или сразу на нужный этап?
✓
✗
Тоггл «Переводить» ВЫКЛ → после полного сбора данных → сделка в «Первичный контакт» ИЗМЕНЕНО
✓
✗
Тоггл «Переводить» ВКЛ → после полного сбора → проверить: сделка в «Первичный контакт» + перевод, или сразу на другой этап? ИЗМЕНЕНО
✓
✗
Клиент даёт ВСЕ данные одним сообщением + подтверждает → сколько действий срабатывает? НОВОЕ
6. E2E: полный путь клиента ИЗМЕНЕНО
#
Сообщение клиента
Ожидаемое действие
Этап
1
«Привет! Хочу забронировать столик»
Бот спрашивает имя
—
2
«Меня зовут Анна»
Бот спрашивает телефон
—
3
«+66812345678»
Бот спрашивает email
—
4
«anna@mail.com»
Бот спрашивает: когда, сколько человек?
—
5
«В субботу вечером, 4 человека»
Создаёт сделку
Первичный контакт
6
«Что у вас из рыбных блюд?»
Отвечает, уточняет
Переговоры
7
«Да, бронируйте как обсуждали»
Подтверждение
Принимают решение
8
«Нас будет 6, не 4»
Обновляет кол-во
update
9
«Нужен столик на террасе»
Обновляет пожелания
update
Порядок вопросов бота может отличаться — главное, что все данные собраны до создания сделки.
7. Граничные случаи
✓
✗
Клиент сразу даёт телефон без просьбы бронировать → бот уточняет контекст, НЕ создаёт сделку ИЗМЕНЕНО
✓
✗
Клиент спрашивает о меню и бронировании в одном сообщении → бот отвечает на оба, начинает сбор
✓
✗
Клиент пишет на английском: «I'd like to book a table» → бот обрабатывает корректно
✓
✗
Клиент отменяет: «Отмените бронирование» → не создаёт новую сделку
✓
✗
Невалидный email: «мой email — нет» → бот переспрашивает НОВОЕ
✓
✗
Невалидный телефон: «123» → бот переспрашивает НОВОЕ
✓
✗
Клиент бросает диалог (дал имя, но не email) → сделка НЕ создаётся. При возврате бот продолжает сбор НОВОЕ
8. Настройки «Создавать сделку» UI settings
📌 Добавлять в этап (dropdown)
✓
✗
Dropdown показывает этапы воронки из amoCRM
✓
✗
Выбрать «Первичный контакт» → сделка на этом этапе
✓
✗
Сменить этап → сделка на новом этапе
📋 Какие данные запрашивать
Агент всегда запрашивает email + телефон + имя + детали. Без полного набора сделка не создаётся.
✓
✗
Клиент даёт только имя → бот дозапрашивает телефон + email + детали ИЗМЕНЕНО
✓
✗
Клиент даёт все данные → сделка с полными данными ИЗМЕНЕНО
🏷️ Маппинг полей
✓
✗
Тоггл «Изменить» ВКЛ → можно выбрать переменную ChatPlace
✓
✗
Dropdown переменной → значение передаётся в amoCRM
✓
✗
Тоггл ВЫКЛ → поле не передаётся
➕ Добавить данные
✓
✗
«+ Добавить данные» → новое поле маппинга
✓
✗
Кастомное поле → маппинг сохраняется
✓
✗
Удалить поле → маппинг убирается
💬 Комментарии к сделкам
✓
✗
Тоггл ВКЛ → комментарий с деталями диалога
✓
✗
Тоггл ВЫКЛ → сделка без комментария
9. Настройки «Переводить сделку» UI settings
✓
✗
Dropdown «Этап сделки» показывает все этапы воронки
✓
✗
Блок: dropdown + «Опишите правила перевода»
✓
✗
«+ Добавить этап» → новый блок
✓
✗
Удалить этап → блок исчезает
✓
✗
Первичный контакт → Переговоры — корректно
✓
✗
Переговоры → Принимают решение — корректно
10. Настройки «Обновлять данные» UI settings
✓
✗
Email и телефон обновляются автоматически
✓
✗
Тоггл «Изменить» ВКЛ → поле обновляется
✓
✗
Тоггл ВЫКЛ → поле НЕ обновляется
✓
✗
Модалка «Изменить» → dropdown полей amoCRM
✓
✗
«+ Добавить данные» → новое поле маппинга
✓
✗
Комментарии: тоггл ВКЛ → комментарий при обновлении
✓
✗
Комментарии: тоггл ВЫКЛ → без комментария
11. Тогглы разрешений UI
✓
✗
ВЫКЛ «Создавать сделку» → агент НЕ создаёт
✓
✗
ВЫКЛ «Переводить» → агент НЕ переводит
✓
✗
ВЫКЛ «Обновлять» → агент НЕ обновляет
✓
✗
Все три ВЫКЛ → ни одно действие не срабатывает
✓
✗
ВКЛ обратно → настройки (промпт, маппинг) сохранились
12. Отключение интеграции
✓
✗
«Отключить» → все AMO-действия недоступны
✓
✗
Подключить обратно → настройки сохранились
13. Защита персональных данных
✓
✗
Тоггл ВКЛ + URL заполнен → privacy URL передаётся
✓
✗
Тоггл ВКЛ + URL пустой → валидация
✓
✗
Тоггл ВЫКЛ → поле скрыто/неактивно
✓
✗
Невалидный URL → валидация
✓
✗
ВЫКЛ → ВКЛ → URL сохранился
14. Формат ответов агента НОВОЕ
DS-871: Агент не должен выводить примеры кода. Вместо кода — кнопки или просьба ответить текстом.
✓
✗
Агент собирает данные → ответы текстом/кнопками, без блоков кода