Делюсь этим с удовольствием. Ниже пошаговая инструкция: десять шагов, и к каждому действию готовое обращение к помощнику, или промпт. Копируй его, описывай свою работу и собирай систему под магазин, автосервис, салон, клинику или небольшую мастерскую. Кода придётся писать немного, но каждый результат нужно проверять глазами.
А началось всё с вопроса про одну и ту же дрель.
У меня магазин инструмента с полками и небольшим подсобным складом. Поставщики привозят товар партиями. Продавцы откладывают ходовой инструмент под клиента. Я принимаю коробки, проверяю количество, раскладываю товар и отвечаю, есть ли нужная модель в наличии.
С одним названием всё просто только на бумаге. Одна и та же дрель бывает в разных комплектациях. Один экземпляр стоит на витрине, второй отложен под клиента, третий вернулся с браком. В Excel при этом легко увидеть одну общую цифру и решить, что товар можно продавать.
На практике я постоянно переключался между накладными, таблицей и полками. Пока искал модель, покупатель ждал. Если товар был отложен, приходилось сначала уточнять у продавца. Если это был витринный образец или возврат, одной цифры в остатке тоже было мало.
Сначала я думал сделать просто список ответов. Потом понял, что список должен быть связан с понятным входом: сообщением клиента или кнопкой в Telegram. Иначе папка останется ещё одним файлом, который нужно открывать вручную.
Первый рабочий результат получился не из длинного технического задания. Я описал помощнику свою рутину обычными словами. Он задал вопросы, разложил задачу на части и помог собрать связку, в которой текст ответа живёт в таблице, поэтому правится без кода.
Главное ощущение после сборки у меня не про технологии. Я перестал отвечать на вопрос «есть ли это в наличии?» наугад и идти проверять каждую полку. Теперь при вопросе о наличии я говорю о состоянии товара: витрина, резерв или возврат.
Что изменится в магазине после чат-бота?
Покупателю магазина нужна обычная справка. Покупатель спрашивает, есть ли гарантия, как оплатить заказ, можно ли оформить возврат или когда привезут товар. Такие вопросы повторяются и хорошо ложатся в отдельные записи FAQ.
В исследовании Naumen по ритейлу боты давали консультацию по темам оплаты, чеков, промокодов, возвратов, доставки и программ лояльности в 58-76% случаев. В исследовании участвовали 113 ритейлеров и проведено более 2300 обращений. Это ориентир для типа вопросов, а не обещание результата конкретному магазину. (naumen.ru)
Есть и другая важная граница. В исследовании Usedesk автоматический ответ в мессенджере встречался в 53% случаев, но самостоятельное решение вопроса чат-ботом составило только 3%. (usedesk.ru)
То есть наличие ответа ещё не означает, что покупатель получил решение. Бот может быстро сказать, где посмотреть цену или условия гарантии. Но если клиент спрашивает про конкретную модель, комплектацию и состояние возврата, продавец должен проверить данные.
У меня система полезна именно на этом разделении:
- справочный вопрос получает готовый ответ;
- вопрос о наличии обращается к данным таблицы;
- непонятный запрос уходит менеджеру;
- товарный остаток не смешивается с резервом, витринным образцом и возвратом.
Я не стал просить помощника отвечать на всё подряд. В магазине инструмента ошибка в ответе о наличии раздражает сильнее, чем честное «уточню у продавца». Поэтому неизвестный вопрос лучше передать человеку, чем придумать уверенный текст.
Бот также не должен превращаться в рекламную рассылку. Ответ на вопрос о гарантии и самостоятельное сообщение с предложением купить набор оснастки - разные вещи. Для рекламных сообщений нужно предварительное согласие клиента, а по требованию адресата рассылку нужно немедленно остановить. Это требование статьи 18 закона «О рекламе». (consultant.ru)
Почему свою систему нельзя сравнивать с готовым сервисом?

У меня правило простое: один вопрос - одна запись. В таблице отдельно лежат цена, оплата, гарантия, возврат и доставка. Если меняется текст про гарантию, я меняю одну ячейку. Остальные ответы остаются на месте.
Так устроена и FAQ-система DataTalksClub. В ней ответы хранятся отдельными Markdown-файлами, а новый вопрос проходит отдельную обработку. В открытом описании проекта указано 1395 записей по шести курсам. (github.com)
FAQ-помощник - это Slack-бот, который отвечает студентам, используя этот FAQ как один из источников» (перевод с английского).
Для магазина вместо отдельных файлов подойдёт Google Таблица. Она нужна для одного: вынести меняющиеся тексты туда, где их можно прочитать и поправить без обращения к разработчику.
Готовый сервис выигрывает в другой точке. Не нужно разбираться с Google Таблицей, Apps Script, токеном и вебхуком. Подключил тариф, настроил сценарий и работаешь в уже собранном интерфейсе. Если задача типовая и меняться не будет, это разумный выбор.
Своя сборка имеет другую цену. Нужно самому проверить данные, кнопки, доступы и ответы. При добавлении новой модели инструмента нельзя просто надеяться, что система угадает комплектацию. Сначала внеси точную запись, потом проверь, что бот показывает её клиенту.
Я не пытался повторить готовый сервис целиком. Мне нужна была небольшая вещь: папка утверждённых ответов, кнопки для частых тем и понятный маршрут для вопроса, на который таблица не отвечает. Всё остальное только увеличило бы число мест для ошибки.
Как устроена система ответов на вопросы?
Внутри пять частей.
- Telegram принимает сообщение покупателя и показывает кнопки. Там же открывается меню с разделами вроде «Цены», «Оплата», «Гарантия» и «Условия работы».
- Webhook - это адрес-приёмник, куда Telegram сам отправляет заявку о новом сообщении. Постоянно опрашивать Telegram для этой схемы не нужно.
- Apps Script - это бесплатный обработчик от Google. Он достаёт текст сообщения или событие от кнопки, находит нужную запись и отправляет ответ.
- Google Таблица хранит сами ответы. Это папка, которую можно открыть глазами. В ней не должен лежать весь складской хаос. Только утверждённые тексты и признаки активности.
- Ответ в Telegram возвращается через Bot API. Для текста используется
sendMessage, для кнопок к сообщению добавляетсяreply_markup.
Схема выглядит так:
Telegram -> webhook -> Apps Script -> Google Таблица -> ответ в TelegramЕсли клиент нажал «Гарантия», в событии приходит значение кнопки. Скрипт ищет ключ warranty, читает ответ из активной строки и отправляет его. Если клиент написал вопрос свободным текстом, помощник может настроить простое сопоставление ключевых слов или передать запрос менеджеру.
Я не смешивал в одной записи правила и рекламные предложения. В ответе на вопрос должна быть фактическая информация: срок гарантии, порядок оплаты, условия возврата. Скидка или предложение сопутствующего товара должны проходить отдельно и только при наличии согласия на рекламу.
Для таблицы достаточно такой структуры:
key | question | answer | active
price | Цена | Актуальную цену уточни по карточке модели или у продавца. | yes
payment | Оплата | Способы оплаты уточни у продавца перед оформлением заказа. | yes
warranty | Гарантия | Условия гарантии зависят от модели и документов на покупку. | yesВ моём магазине эта схема полезна ещё и тем, что не обещает наличие товара без проверки. FAQ отвечает на общие условия, а данные о конкретной модели должны идти из отдельной актуальной записи.
Если хочешь собрать такую же связку ответов на своей задаче и проверить её руками, приходи на практикум:
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК
Что поставить и сколько это стоит?
VS Code нужен как папка проекта с понятным окном для файлов. Кода придётся писать немного, но базовые шаги нужно проверять глазами. Открываешь папку, запускаешь помощника и описываешь задачу словами.
Claude Code встраивается в редактор и работает с файлами проекта. Он может создать структуру, изменить Apps Script, объяснить ошибку и показать, что именно поменял. Я всё равно просматриваю результат, особенно места, где используются токен бота и доступ к таблице.
Установка занимает около четверти часа:
- Скачай и установи VS Code.
- Запусти Claude Code внутри редактора.
- Войди в аккаунт.
- Создай или открой папку проекта.
- Проверь, что помощник видит файлы.
Поставил один раз - потом можно собирать соседние автоматизации теми же инструментами. Меняется задача: сегодня FAQ для магазина, позже таблица остатков или простой отчёт. Сам редактор и помощник остаются теми же.
Подписка Claude Pro стоит $20 в месяц официально. Это около 1 560 ₽ без комиссии за оплату из России, но точную сумму списания сверяй по актуальному курсу ЦБ и условиям платёжного сервиса: комиссия, конвертация и возможный налог добавляются отдельно. (support.anthropic.com)
Claude Code входит в Pro, но API в подписку не входит. Если проект начнёт обращаться к API напрямую, расходы считаются отдельно через Claude Console. У Pro есть сессионные и недельные лимиты: их удобно контролировать таблицей расходов. Сессионный лимит сбрасывается каждые пять часов, а доступный объём зависит от длины сообщения, файлов, текущего диалога, инструментов и выбранной модели. (support.anthropic.com)
Google Таблица нужна как хранилище FAQ. Telegram-бот создаётся через @BotFather, там же получается токен. Токен нельзя публиковать в статье, пересылать продавцам или оставлять в открытой таблице.
Claude Pro даёт доступ к Claude Code, но вызовы API оплачиваются отдельно. Перед сборкой проверь, каким способом помощник работает в проекте, чтобы не получить другую статью расходов.
Как собрать чат-бота по шагам?

Подготовь папку проекта.
Создай папку на компьютере, открой её в VS Code и запусти Claude Code. Не проси сразу «сделать полноценный магазин». Начни с ответа на типовые вопросы.
Разобрать задачу до начала работыУ меня небольшой магазин инструмента с полками и подсобным складом. Покупатели часто спрашивают цену, оплату, гарантию, возврат, доставку и наличие конкретной модели. Хочу Telegram-бота с папкой утверждённых ответов. Пока не пиши код. Разложи задачу на части, перечисли нужные данные, границы автоматических ответов и вопросы, которые должны уходить продавцу. Объясняй простыми словами. Сохрани план в отдельный файл проекта.
Помощник должен вернуть план, а не длинную программу. Проверь, что в нём отдельно названы справочные вопросы и вопросы о конкретном товаре.
Создай таблицу FAQ.
Открой Google Таблицы и добавь четыре колонки. Не смешивай в одном ответе цену, гарантию и рекламное предложение.
key | question | answer | active price | Цена | Актуальную цену конкретной модели уточни у продавца перед оформлением заказа. | yes payment | Оплата | Способы оплаты и порядок оформления уточни у продавца. | yes warranty | Гарантия | Условия гарантии зависят от модели и документов на покупку. | yes return | Возврат | Условия возврата зависят от товара и ситуации, сложный вопрос передаём продавцу. | yes delivery | Доставка | Возможность и срок доставки уточни у продавца по конкретной модели. | yes availability | Наличие | Наличие проверяется отдельно по модели, комплектации и состоянию товара. | yesВ колонке
activeоставляйyesтолько для готовых и проверенных текстов. Если ответ устарел, измени его или поставьno.Опиши таблицу помощнику.
Дай ему ссылку на таблицу через доступ Google или попроси создать подключение в проекте. Не передавай лишние данные покупателей.
Подключить Google Таблицу FAQПодключи к проекту Google Таблицу с колонками key, question, answer, active. Скрипт должен читать только строки, где active равно yes, искать ответ по key и возвращать текст из колонки answer. Не храни в проекте лишние данные клиентов. Перед правкой перечисли, какие файлы и настройки собираешься изменить. Если нужен доступ к таблице, объясни каждый шаг простыми словами.
В ответ помощник должен описать доступ к таблице и способ чтения строк. Проверь глазами, что неактивная запись не попадёт в ответ.
Создай проект Apps Script.
Открой Apps Script из Google Таблицы или создай отдельный проект. Нужна функция
doPost(e), которая принимает тело POST-запроса и разбирает JSON Telegram.Создать обработчик TelegramСоздай минимальный Apps Script для FAQ-бота магазина инструмента. Добавь функцию doPost(e), которая читает JSON из e.postData.contents, находит обычное сообщение message.text и идентификатор чата, затем ищет подходящий key в Google Таблице FAQ и отправляет ответ через Telegram Bot API методом sendMessage. Если вопрос не найден, отправляй короткое сообщение о передаче продавцу. Не добавляй генерацию фактов, рекламную рассылку или ответы, которых нет в таблице. Объясни, где безопасно хранить токен бота.
После результата проверь, что скрипт различает текст сообщения и отсутствие совпадения. Telegram прямо указывает, что бота нужно подключить к серверу или облачному скрипту через API, поэтому одного создания бота в
@BotFatherнедостаточно. (core.telegram.org)Опубликуй web app.
В Apps Script выбери развёртывание как веб-приложения. В доступе укажи вариант, при котором Telegram сможет отправлять POST-запросы. Скопируй URL, который заканчивается на
/exec.Проверить публикацию web appПроверь проект Apps Script для Telegram FAQ-бота. Объясни, как развернуть его как web app, какой URL получить и какие настройки доступа нужны для входящих POST-запросов Telegram. Не меняй код без моего подтверждения. После публикации дай список проверок для doPost и покажи, как понять, что URL отвечает.
Для веб-приложения Apps Script требуется
doGet(e)илиdoPost(e). После публикации URL можно передать Telegram методомsetWebhook. (developers.google.com)Подключи токен бота.
Создай бота через
@BotFather, получи токен и добавь его в защищённую настройку проекта. Не вставляй токен в публичный промпт, README или сообщение продавцу.Подключить Telegram Bot APIПодготовь проект к подключению Telegram Bot API. Нужны токен бота, URL опубликованного web app и идентификатор Google Таблицы FAQ. Покажи безопасный способ хранить токен в настройках Apps Script. Не выводи токен в логах, ответах пользователю и файлах, которые могут стать публичными. Объясни, какие значения я должен добавить руками.
После сохранения токена отправь боту
/start. Если ответа нет, сначала проверь URL web app и доступ проекта, а не переписывай всю систему.Установи webhook Telegram.
Передай Telegram URL опубликованного web app через
setWebhook. Затем запросиgetWebhookInfoи проверь адрес.Настроить webhookПодготовь понятные команды для установки webhook Telegram на опубликованный URL Apps Script. Используй метод setWebhook, затем getWebhookInfo для проверки. Объясни, где выполнить каждую команду, какие данные должны появиться в ответе и как удалить старый webhook перед повторной установкой. Не показывай мой токен в готовом тексте.
При webhook Telegram отправляет каждое новое обновление HTTPS POST-запросом на указанный URL. Скрипт получает объект
Update, разбираетmessage.textилиcallback_queryи выбирает ответ. (core.telegram.org)Добавь меню и кнопки.
В меню можно вынести «Цены», «Оплата», «Гарантия» и «Условия работы». Для верхнего меню подойдут reply-кнопки. Для кнопок внутри ответа можно использовать inline-кнопки с callback-событиями.
Добавить меню FAQДобавь в Telegram-бота меню с разделами «Цены», «Оплата», «Гарантия», «Возврат», «Доставка» и «Связаться с продавцом». Для верхнего меню используй reply-кнопки, а для навигации внутри ответа inline-кнопки. Нажатие кнопки должно передавать key или callback_data, а скрипт должен брать текст только из активной строки Google Таблицы. Для неизвестного вопроса оставь кнопку передачи продавцу.
Telegram разделяет reply-кнопки и inline-кнопки. Inline-кнопка может передать callback-событие без отправки видимого текста в чат. (core.telegram.org)
Проверь ответы глазами.
Отправь
/start, нажми каждую кнопку, напиши вопрос свободным текстом и проверь неизвестный запрос. Отдельно проверь, что ответ о наличии не обещает продажу витринного образца, резерва или возврата.Проверить FAQ-ботаСоставь проверку для Telegram FAQ-бота магазина инструмента. Проверь команды /start, кнопки «Цена», «Оплата», «Гарантия», «Возврат» и «Доставка», свободные вопросы, неизвестный вопрос и передачу продавцу. Добавь проверки для неактивной строки, пустого ответа и товара, который есть только как резерв, витринный образец или возврат. Для каждой проверки напиши ожидаемый результат простыми словами.
В этот момент не оценивай систему по одному удачному сообщению. Прогони похожие формулировки: «сколько стоит», «цена этой дрели», «есть ли гарантия», «можно оплатить картой». Ответ должен оставаться точным и не превращаться в догадку.
Ограничь длину ответа.
Один текст, отправляемый через
sendMessage, не должен превышать 4096 символов после обработки сущностей. Длинные условия разбивай на несколько сообщений или сокращай до карточки с понятным маршрутом. (core.telegram.org)Проверить длину сообщенийПроверь все ответы FAQ-бота магазина инструмента. Найди тексты длиннее 4096 символов, предупреди о каждом и предложи короткую версию без потери условий. Не меняй цены, правила гарантии, возврата и доставки без моего подтверждения. Если ответ лучше разбить на несколько сообщений, покажи порядок частей.
После первого результата я увидел не программу из непонятных файлов, а обычную таблицу с ответами и сообщения в Telegram.
Сборка не заканчивается на первом ответе. Продавец должен проверить формулировки, а я должен проверить остатки и состояние товара. Помощник пишет связку, но отвечает перед покупателем магазин.
Что появится в папке, когда бот заработает?
В Google Таблице лежит содержимое FAQ:
key | question | answer | activeВ проекте Apps Script находится обработчик входящих запросов. Он принимает JSON, определяет сообщение или нажатие кнопки, обращается к таблице и вызывает Telegram API.
Опубликованный URL нужен как адрес, на который Telegram отправляет новые обновления. Если URL изменился, webhook нужно установить заново.
В настройках проекта хранятся технические значения:
- токен бота;
- идентификатор Google Таблицы;
- URL webhook;
- служебные параметры доступа.
Точные имена автоматически созданных файлов я по документации не подтверждаю и поэтому не ориентируюсь на конкретный список файлов. Важна роль каждого элемента, а не его название.
Главная рабочая привычка здесь простая: новый текст сначала появляется в таблице, затем проходит проверку через кнопку и свободный вопрос. Не нужно каждый раз просить помощника переписывать код ради изменения ответа о цене или гарантии.
Что ломается и как попросить помощника это починить?

Повторный ответ из-за update_id Один вопрос может обработаться дважды, если система повторно приняла то же обновление. Обработчик должен помнить обработанные идентификаторы и не создавать повторное действие.
Проверь Telegram FAQ-бота магазина инструмента. Симптом: на одно сообщение покупатель получает два одинаковых ответа. Найди, как обрабатывается update_id, и объясни, может ли одно обновление попасть в обработчик повторно. Предложи безопасную идемпотентную проверку, чтобы повторная доставка не отправляла ответ дважды. Не меняй код до моего подтверждения и покажи список файлов для правки.
Такой сбой описан в issue php-telegram-bot: повторная доставка приводила к сообщению «Duplicate update received». (github.com)
Конфликт второго экземпляра Если старый процесс продолжает получать обновления, а новый запускается параллельно, Telegram возвращает 409 Conflict. В минимальной схеме на Apps Script не запускай рядом другую копию с тем же ботом.
Проверь Telegram FAQ-бота магазина инструмента. Симптом: бот перестал отвечать, а в логах появляется 409 Conflict и сообщение о другом запросе getUpdates. Найди второй экземпляр, старый процесс, контейнер, cron или другой способ получения обновлений. Объясни, что нужно остановить, чтобы остался только один способ доставки сообщений. Не переписывай FAQ и не меняй токен.
Лимит 429 При всплеске сообщений или массовой отправке Telegram может попросить подождать. Код должен прочитать retry_after, выдержать паузу и повторить отправку. Очередь должна иметь запас, а не работать ровно на пределе.
Проверь Telegram FAQ-бота магазина инструмента. Симптом: часть ответов не отправляется, в журнале появляется 429 Too Many Requests. Найди обработку retry_after, повторную отправку и очередь исходящих сообщений. Предложи исправление с паузой и запасом по скорости. Для обычного FAQ не добавляй массовую рассылку и не превращай ответы покупателям в рекламу.
Ошибка 429 и параметр retry_after описаны в Telegram Bot API, а в группе отдельной причиной может стать включённый медленный режим. (core.telegram.org)
Бот не начинает диалог Если покупатель ни разу не нажал кнопку запуска и не написал боту, бот не сможет сам отправить ему личное сообщение. Дай ссылку на запуск заранее или предложи телефон, почту и форму.
Проверь сценарий передачи вопроса продавцу в Telegram FAQ-боте магазина инструмента. Симптом: бот получает имя или вопрос из другого канала, но не может первым написать покупателю. Объясни ограничение Telegram и добавь понятную кнопку или ссылку, по которой покупатель сначала запускает диалог с ботом. Для тех, кто не запустил Telegram-диалог, оставь альтернативу: телефон или почту.
Telegram не разрешает боту первым начинать разговор с пользователем. Диалог должен запустить сам пользователь. (core.telegram.org)
Старый offset после замены токена Это последняя проверка, и она коварнее остальных. Исходящие сообщения могут отправляться, getMe может работать, но входящие обновления не приходят. После замены токена проверь не только исходящую отправку, но и получение нового сообщения.
Проверь Telegram FAQ-бота после замены токена. Симптом: исходящие сообщения работают, но новые вопросы покупателей не доходят. Проверь, не используется ли offset старого бота, связан ли offset с идентификатором текущего бота и меняются ли счётчики входящих сообщений. Отдельно проверь getUpdates или webhook и предложи безопасную миграцию без потери новых сообщений. Не удаляй данные FAQ.
Сообщение от имени бота ещё не доказывает, что входящие вопросы доходят. После смены токена отправь новое сообщение пользователю и проверь webhook, входящий счётчик и ответ на свежий update_id.
Сколько стоит своё решение против сервиса и подрядчика?
| Вариант | Цена | Что входит |
|---|---|---|
| Своя сборка | $20 в месяц, около 1 560 ₽ по курсу ЦБ | Claude Pro с Claude Code, Telegram, Google Таблица, Apps Script, самостоятельная настройка и проверка |
| Готовый сервис | от 0 ₽ до 500 ₽ в месяц | Шаблон, конструктор или базовый тариф, состав функций зависит от продукта |
| Готовый сервис | 790 ₽ в месяц | Более широкий опубликованный тариф, состав нужно сверять отдельно |
| Готовый сервис | до 59 880 ₽ в год | Годовой тариф из открытого прайса, не прямой аналог минимальной схемы |
| Подрядчик | от 8 320 ₽ разово | Небольшой FAQ-бот |
| Подрядчик | от 49 000-50 000 ₽ разово | Более полная сборка |
Цены в таблице собраны из открытых прайсов и примеров подрядчиков, они могут меняться, поэтому перед выбором сверяй условия на странице сервиса или у подрядчика.
Готовый тариф за 0 ₽ выглядит привлекательно, но там может не быть нужного числа каналов, кнопок или передачи менеджеру. Сравнивать нужно не только цену, но и состав: где хранится FAQ, кто меняет ответы, есть ли Telegram, что происходит с неизвестным вопросом.
Собственная сборка не бесплатна. Claude Pro остаётся постоянной статьёй расходов. API в подписку не входит и оплачивается отдельно. Если система используется редко, подписка может оказаться невыгодной. Если она нужна для нескольких автоматизаций и изменения ответов, самостоятельный вариант получает больше смысла.
Подрядчик экономит время на старте, но каждое изменение возвращает зависимость от другого человека. Готовый сервис проще, когда сценарий типовой. Своя таблица лучше, когда правила магазина часто меняются.
Решение не подходит для сложной CRM, большого потока сообщений, постоянной генерации ответов и ситуации, где нет времени проверять данные. Оно не заменяет складской учёт, резервирование и контроль витринных образцов. Для моей задачи достаточно папки утверждённых ответов.
После раздела про сборку и расходы становится понятна связь с практикумом. Там эту работу проходят руками на своей задаче: от описания рутины до проверки работающей вещи, без попытки учиться программированию ради самого программирования.
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК
Что сделать сегодня, если технологии не для тебя?
Сначала выпиши вопросы, которые продавцы слышат постоянно:
- сколько стоит модель;
- какие способы оплаты;
- есть ли гарантия;
- как оформить возврат;
- возможна ли доставка;
- есть ли товар сейчас;
- чем отличается одна комплектация от другой.
Рядом напиши ответ в одну-две понятные фразы. Если точной цены нет, не ставь догадку. Если наличие меняется, отправляй к продавцу или в отдельную таблицу остатков.
Раздели обращения на две группы. В первую попадает справка: цена, оплата, гарантия, возврат и доставка. Во вторую - конкретная проверка модели, резерва, витринного образца и возврата. Вторую группу лучше передавать человеку.
Потом открой Google Таблицу, создай колонки key, question, answer, active и добавь несколько записей. Не начинай с двадцати кнопок. Сначала проверь два-три ответа и неизвестный вопрос.
Связь с практикумом здесь простая: на занятиях вайб-кодинг отрабатывается руками на собственной задаче. Ты описываешь свою рутину, проверяешь результат и просишь помощника исправить конкретный симптом.
Вопросы и ответы
Вопросы и ответы
ответы на общие вопросы
Для магазина это вопросы о цене, оплате, гарантии, возврате, доставке и общих условиях работы. Готовые ответы на вопросы списком хранятся отдельными строками FAQ и показываются через кнопки. Вопрос о конкретной модели, комплектации или состоянии товара лучше передавать продавцу.
ответы на вопросы должны быть
Короткими, точными и основанными на утверждённых данных магазина. Не добавляй в них догадки о наличии, сроках доставки или гарантии. Если ответа нет в таблице, бот должен честно сообщить, что подключит продавца.
этапы ответа на вопрос
Сообщение или нажатие кнопки приходит в Telegram, webhook передаёт его в Apps Script, скрипт ищет активную запись в Google Таблице, затем отправляет найденный текст через sendMessage. При отсутствии совпадения срабатывает передача менеджеру.
порядок ответа на вопрос
Сначала определи тему вопроса, затем найди активный ключ, после этого отправь короткий ответ. Если клиент спрашивает о конкретном инструменте, сначала проверь модель, комплектацию и состояние. Не смешивай резерв, витринный образец, возврат и доступный остаток.
ответ на вопрос сделать
Создай таблицу FAQ с колонками key, question, answer, active, подключи её к Apps Script и настрой Telegram webhook. Начни с нескольких тем: цена, оплата, гарантия и доставка. После этого проверь кнопки и свободные формулировки.
ответ на вопрос требования
Здесь ответ на вопрос требования магазина короткий и проверенный: только утверждённые формулировки из таблицы, без догадок о наличии и цене.
форма ответа на вопрос
Для простого FAQ подойдут текстовые карточки и кнопки. Текст одного сообщения Telegram ограничен 4096 символами, поэтому длинные условия нужно сокращать или отправлять несколькими сообщениями. В конце сложного ответа добавь кнопку связи с продавцом.
ответы на вопросы можно
Самостоятельно передать боту справочные вопросы с заранее проверенным ответом. Нельзя без проверки поручать ему обещать наличие, подбирать комплектацию, подтверждать возврат или придумывать цену. Для таких случаев нужен продавец или отдельная актуальная запись. Бот не должен придумывать ответ на любые вопросы без проверенных данных.
вопрос влияющий на ответ
Вопрос влияющий на ответ - это модель, комплектация, состояние товара и способ оплаты. Они меняют подходящий ответ. Поэтому перед отправкой скрипт сверяется с активной записью, а не подбирает текст по одному слову.
оценка ответа на вопрос
Проверь ответ по точности, полноте и маршруту действия. Отправь несколько вариантов одного вопроса, нажми каждую кнопку, проверь неактивную строку и неизвестный запрос. Автоматический ответ сам по себе не доказывает, что вопрос решён: в одном исследовании разница составила 53% против 3%. (usedesk.ru)
Источники
- Naumen: исследование автоматизации обращений в ритейле
- Usedesk: исследование клиентского сервиса
- DataTalksClub FAQ assistant
- Telegram Bots FAQ
- Google Apps Script Web Apps
- Telegram Bot Tutorial
- Telegram Bot API
- Anthropic: What is the Pro plan?
- Anthropic: использование Claude Code с планом Pro или Max
- Федеральный закон «О рекламе», статья 18
- Telegram Bot API: дубликаты update_id
- Telegram: ошибка 429 и повторная отправка
Это собирательная история выпускников практикума, а не рассказ одного человека: так эта работа устроена в большинстве таких дел.
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК

