Владелец «Кодиума» согласился на бота. С первой встречи выйти с неё нужно с одной страницей: какие шаги проходит человек, что бот спрашивает, куда попадает заявка. Если этой страницы нет, агент придумает сценарий сам, и он будет не про школу. В прогоне курса так случилось с текстом согласия: агент перечислил почту и отчество, которых бот вообще не спрашивал.
Чему научишься в этом уроке:
• записать сценарий бота по шагам вместе с заказчиком;
• объяснить, зачем бот спрашивает каждое поле, и не собирать лишнего;
• понимать, что важно знать про согласие и 152-ФЗ, и куда складывать заявки.
Сценарий по шагам
Сценарий похож на анкету у стойки администратора: вопросы идут по одному, на каждый есть понятный ответ. Для «Кодиума» он такой:
- /start: бот здоровается от имени школы, коротко говорит, что спросит и зачем, и просит согласие кнопками «Согласен», «Не согласен», «Прочитать согласие». Последняя кнопка показывает текст целиком;
- «Не согласен»: вежливый отказ, дальше бот ничего не спрашивает и ничего не сохраняет, предлагает начать заново командой /start;
- «Согласен»: бот запоминает время нажатия и спрашивает имя;
- имя: бот проверяет его и спрашивает телефон;
- телефон: бот проверяет формат. Неверный номер отбивает с примером и спрашивает снова;
- курс: четыре кнопки: Python, Веб-разработка, Нейросети, Пока не знаю;
- заявка готова: владельцу уходит уведомление, в файл на Яндекс Диске дописывается строка, человеку приходит «Спасибо! Ваша заявка принята».

Каждый шаг согласуй с владельцем вслух: «Человек нажал “Пока не знаю”. Что вы с ним делаете?» Такие вопросы вытаскивают то, о чём заказчик не подумал. Например, нужна ли кнопка для тех, кто передумал.
Какие данные и зачем
Правило простое: бот спрашивает только то, что владелец реально использует. Каждое лишнее поле удлиняет анкету, часть людей бросает её на середине, а лишние персональные данные ещё и добавляют обязанностей.
- Имя: чтобы администратор обратился к человеку по имени при звонке;
- Телефон: чтобы перезвонить. Поэтому формат проверяется сразу, иначе заявка бесполезна;
- Курс: чтобы позвонил тот, кто ведёт нужное направление. Кнопки вместо текста;
- Дата согласия: чтобы при вопросе «а с чего вы мне звоните?» показать, когда человек нажал «Согласен».
Почты, отчества и возраста в списке нет. Владелец их не просил, значит и в тексте согласия их быть не должно. Согласие перечисляет ровно те поля, которые бот собирает.
Согласие и 152-ФЗ: что важно знать
Это не юридическая консультация. Ниже то, что курс нашёл в открытых источниках поиском; текст закона в актуальной редакции и схему именно твоего заказчика сверяет юрист.
- Имя и телефон относятся к персональным данным (ПД), на них распространяется закон 152-ФЗ.
- Согласие должно быть явным: с целью, составом данных и сроком хранения. В открытых источниках советуют спрашивать его до сбора данных. Сбор начинается в момент, когда человек пишет имя, а не когда ты записываешь его в файл. Поэтому кнопка «Согласен» стоит первым шагом, а время её нажатия сохраняется.
- Отвечает за данные (оператор ПД) обычно владелец бизнеса, а разработчик работает по его поручению. Политику обработки данных публикует владелец.
- Уведомлять Роскомнадзор как оператор ПД обычно нужно, но зависит от случая.
- Есть требование о первичной записи данных граждан РФ в базу на территории РФ (ст. 18 ч. 5 152-ФЗ). Как именно оно применяется к боту в Telegram, поиск ответа не дал: Telegram иностранная платформа, и этот риск есть у любого Telegram-бота. Это вопрос юристу заказчика.
Из этого в курсе сделаны два решения. Первое: согласие спрашиваем до первого вопроса. В первой версии прогона оно стояло в конце, после имени, телефона и курса; заказчик решил перенести его в начало, и бота переделали (как, увидишь в уроке 2.4). Второе: на сервере бота имя и телефон не хранятся. Бот пропускает их через себя и сразу пишет в файл на Яндекс Диске владельца, а в своей базе держит только номер заявки, курс и даты. Почему сам сервер стоит за рубежом, разберём в уроке 2.5 на замере. Текст согласия говорит об этом прямо: данные хранятся на Яндекс Диске владельца, а бот работает на сервере за пределами РФ.
Куда падают заявки
Владельцу нужен список заявок, который он откроет без тебя. Основной путь курса: файл zayavki.xlsx в папке «Кодиум» на Яндекс Диске владельца. Каждая заявка дописывается в него новой строкой; открыть можно в браузере или в Excel. В прогоне бот сам создал папку и загрузил файл.
Вариант: Google Таблица. Она удобна, если заказчик уже живёт в Google, но данные тогда лежат у Google за рубежом, а работу Google Cloud из РФ и с российского сервера курс не проверял. Предлагай её, только если заказчик сам попросил и понимает, где окажутся данные.
Одна страница для агента
Итог встречи записываешь в файл scenariy.md в папке проекта. В уроке 2.3 ты отдашь его агенту вместе с заданием. Что в нём должно быть:
- кто заказчик и какая боль: «школа “Кодиум”, заявки теряются в директе»;
- шаги сценария с точными текстами кнопок, начиная с согласия;
- поля и зачем каждое;
- что происходит при «Не согласен» и при неверном телефоне;
- куда уходит заявка: уведомление владельцу и строка в файле на Яндекс Диске;
- чего бот не делает: не хранит имя и телефон на сервере, не отвечает на свободные вопросы.
Такой файл работает как CLAUDE.md из урока 1.5, только про один продукт: агент не гадает, а сверяется.
Контрольный вопрос. Агент прислал текст согласия: «Я согласен на обработку ФИО, телефона и адреса почты». Бот спрашивает только имя и телефон. Что делаешь?
Подсказка: Согласие описывает реальные действия бота, а не наоборот.
На курсе задания проверяются автоматически. Решить первое задание бесплатно → · Подобрать курс
Контрольный вопрос. Человек нажал /start и сразу «Не согласен». Что бот должен сделать дальше?
Подсказка: Вспомни, на каком шаге стоит согласие и что разрешено до него.
На курсе задания проверяются автоматически. Решить первое задание бесплатно → · Подобрать курс
Контрольный вопрос. Владелец хочет добавить в анкету вопрос «Сколько вам лет?», но не знает, зачем. Что посоветуешь по уроку?
Подсказка: Правило из раздела «Какие данные и зачем».
На курсе задания проверяются автоматически. Решить первое задание бесплатно → · Подобрать курс
Задание. МИССИЯ «Страница сценария». Составь файл scenariy.md для «Кодиума» или своего заказчика из миссии 2.1: шаги сценария с точными текстами кнопок, список полей с причиной для каждого, поведение при неверном телефоне и при «Не согласен», куда уходит заявка. Отдельной строкой укажи, на каком шаге спрашиваешь согласие и почему. Отдельным абзацем напиши черновик текста согласия: цель, состав данных (ровно поля из списка), где хранятся, срок хранения. Сделай в среде: Прогони сценарий вживую в Telegram: ты «бот», знакомый или однокурсник — клиент; отвечаешь строго по scenariy.md. Где собеседник споткнулся, поправь сценарий. Принято, если: приложен файл scenariy.md; согласие стоит до первого вопроса о данных, и объяснено почему; у каждого поля есть причина; в тексте согласия перечислены те же поля, что в сценарии, и ни одного лишнего; описаны обе ветки («Согласен» и «Не согласен»); срок хранения назван (любой, согласованный с заказчиком или выбранный тобой с пометкой «уточнить у владельца»); приложен снимок переписки прогона и правка в scenariy.md («было → стало» или git diff).
Подсказка: Перечитай согласие и сценарий рядом: каждое поле должно встречаться в обоих.
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
На курсе задания проверяются автоматически. Решить первое задание бесплатно → · Подобрать курс
Читайте также: Telegram-бот заявок и 152-ФЗ: где хранить данные клиентов
Что дальше
Сценарий записан. В следующем уроке ты создашь проект, отдашь сценарий агенту и запустишь первую версию бота у себя на компьютере, а заодно увидишь, как агент споткнулся о версии библиотек в прогоне курса.
Итог:
• сценарий «Кодиума»: согласие первым шагом, потом имя, телефон с проверкой, курс кнопками;
• каждое поле нужно владельцу, согласие перечисляет ровно их;
• имя и телефон не хранятся на сервере, заявки идут в zayavki.xlsx на Яндекс Диске владельца.
