--- name: webask-integration-triage description: "Находит причину, по которой ответы на опрос WebAsk не доходят до внешней системы, и устраняет её. Применяется, когда человек сообщает, что заявки не приходят в CRM, уведомления не появляются в Telegram или MAX, строки не добавляются в Google Таблицу либо не срабатывает вебхук." --- # Почему ответы не уходят из опроса У молчащей интеграции четыре разные причины, и лечатся они по-разному. Идти строго по порядку: каждый следующий шаг дороже предыдущего. Отвечай человеку на том языке, на котором он пишет. ## 1. Узнать номер опроса Без него дальше идти некуда. Если опрос назвали словами — найти через `get_quiz_list` и подтвердить, тот ли это опрос, прежде чем что-то менять. ## 2. Прочитать состояние: `get_quiz_integrations` Возвращает все интеграции опроса, у каждой поле с готовой причиной. Это покрывает большинство обращений и не стоит ничего. | Причина | Что значит | Что делать | |---|---|---| | `blocked_by_tariff` | интеграция не входит в тариф | сказать прямо и остановиться, см. запрет ниже | | `not_connected` | подключения нет вовсе | подключение делается только в кабинете: дать шаги, не пытаться сделать самому | | `disabled` | подключено, но отправка выключена | спросить, выключали ли намеренно; включить только с согласия | | пусто | со стороны настроек всё исправно | идти к шагу 3 | Вебхуков в этом ответе нет — у них своя настройка, см. шаг 5. ## 3. Найти отказ Дальше поведение зависит от системы: журнал есть не у всех. **Telegram и MAX** — `get_integration_logs`. В записях текст отказа от мессенджера: бота выгнали из группы, чат удалён, тема закрыта, токен отозван. Поле с числом неотправленных показывает, сколько ждёт повтора. **Битрикс24** — своего журнала нет, вместо него `manage_quiz_crm` с действием `check`. Он обращается к порталу и отвечает, жив ли доступ. Токен отзывают на стороне CRM, и со стороны опроса это выглядит как исправная интеграция — поэтому шаг обязателен, даже если на шаге 2 всё было чисто. **Google Таблицы** — `manage_quiz_google_sheets` с действием `show`. Самая частая причина молчания одна: отозван доступ к аккаунту Google. ## 4. Досылать только после устранения причины `resend_integration_logs` для мессенджеров: одной записью или всеми неудачными за период. Досылка при живой причине бессмысленна — повторится тот же отказ, а в журнале станет вдвое больше мусора. Сначала человек чинит на своей стороне: возвращает бота в группу, перевыпускает токен, восстанавливает доступ к таблице. ## 5. Вебхуки — отдельно `get_quiz_webhooks` — список и включён ли каждый. `get_quiz_webhook_logs` — журнал доставки с кодом ответа принимающей стороны. `resend_quiz_webhook_log` — досылка. Значения заголовков в ответах подменены звёздочками: там ключи доступа к чужой системе. Не просить человека продиктовать их и не предлагать перезаписать заголовок «чтобы проверить» — правка вебхука перезаписывает его целиком. ## Чего не делать - **Не предлагать смену тарифа и не вести на оплату.** При запрете по тарифу назвать причину и остановиться. - **Не включать отправку самостоятельно** — выключенная интеграция часто выключена намеренно, на время правок. - **Не досылать «на всякий случай»** — см. шаг 4. ## Что сказать в конце Три вещи: какая интеграция молчит, по какой именно причине и что нужно сделать человеку. Если причина устранена и досылка прошла — сколько отправок ушло.