Диагностика
valalav edited this page 2026-11-09 21:05:22 +03:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Диагностика

Сначала — три проверки за минуту

  1. Открыть ссылку на экран в браузере. Экран открылся? Нет → проблема с публикацией, см. Настройка по шагам, шаг 3.
  2. Отправить тестовый ответ и открыть в Яндекс Формах Интеграция → API → История. Код 200? Нет → проблема в теле запроса или в секрете (шаг 4).
  3. Открыть лист «Ответы 1». Строка есть, а экран не обновился → перезагрузить страницу экрана и проверить, что открыта та же ссылка.

Быстрая таблица

Симптом Причина Что делать
Ответ не появился на экране Запрос не дошёл до скрипта Читать Интеграция → API → История
ServiceJsonContentError Переменные из [+] вставлены вне кавычек Вернуть кавычки: "response_id": "[ID ответа]"
404 или страница Google Вставлен адрес редактора вместо адреса развёртывания Взять ссылку …/exec из раздела «Развёртывание»
Ошибка авторизации, в журнале Unauthorized request secret в теле не совпадает с DEFAULT_SECRET Сделать значения одинаковыми
Missing response ID or inflation range Не подставлен ID ответа или ответ на вопрос Перезаполнить response_id и inflation кнопкой [+]
Unknown survey В поле survey не 1 и не 2 Поставить "1" или "2"
Unknown range or nonnumeric coding rule Текст варианта не совпал со столбцом A листа «Кодирование» или в столбце B не число Синхронизировать тексты и проверить числа
Response sheet is not configured Нет листа «Ответы 1» или «Ответы» Запустить setupTemplate()
Spreadsheet is not bound for web app execution Не выполнена первичная привязка копии таблицы для веб-приложения В редакторе Apps Script выбрать функцию setupTemplate (или bindActiveSpreadsheet) и нажать Run (▶️), либо указать ID своей копии в SHEET_ID
Refusing to use shared template SHEET_ID Скрипт пытается писать в общий эталонный шаблон вместо копии Создать собственную копию таблицы, оставить SHEET_ID = '' и один раз запустить setupTemplate() в редакторе копии
The lock request timed out Слишком плотный поток ответов Ничего не делать; попросить зал не нажимать одновременно
Экран пишет «Нет связи» Скрипт не ответил, не привязана таблица (setupTemplate) или превышены лимиты времени/одновременных вызовов Открыть ссылку и проверить, живо ли развёртывание и выполнен ли однократный запуск setupTemplate
«Предпросмотр · подключение ещё не опубликовано» Открыт предпросмотр HTML Открыть ссылку …/exec
Ответы приходят, среднее не меняется Экран читает другую таблицу Проверить привязку (setupTemplate при SHEET_ID = '')
«Есть некорректные строки» Варианты в форме отличаются от листа «Кодирование» Сверить тексты: тире, «%», пробелы, регистр
Правки кода не проявились Не создана новая версия развёртывания Управление развёртываниями → ✏️ → Версия: Новая
На экране старые подписи после правки шкалы Ещё не прошёл 15-секундный цикл обновления или открыта другая таблица Подождать 15 секунд (или обновить страницу) и проверить, что заполнены все 7 ячеек Кодирование!A2:A8, см. Другой вопрос или шкала

Как читать историю интеграции

Форма → Интеграция → API → История — там каждая отправка ответа и код ответа.

Код Значение
200 Доставлено и записано. Если на экране нет — проблема на стороне чтения
200, строки в таблице нет Дубликат: такой ID ответа уже был, скрипт ответил Already saved
3xx, редирект Адрес редактора вместо адреса развёртывания либо развёртывание удалено
4xx Ошибка в теле запроса или не пройден секрет
5xx, таймаут Скрипт упал; смотреть журнал выполнения в Apps Script

Где журнал ошибок скрипта

Расширения → Apps Script → Журналы выполнения (Executions). Каждая строка — вызов doPost или getLiveStats; при открытии виден текст ошибки и строка кода.

Типовые ситуации

Зал проголосовал, экран на нуле. Ответы в таблице есть → экран открыт по другой ссылке. Ответов нет → смотреть историю интеграции.

Цифры «неполные». Часть ответов не распознана шкалой: вариант в форме отличается от листа «Кодирование» (дефис вместо тире, «процентов» вместо «%», лишний пробел). Скрипт терпимо относится к тире, слову «процент», словам «менее/более/свыше», но другие формулировки не угадывает.

Один участник нажал «Отправить» дважды. Дубликат отбрасывается по ID ответа.

Экран открыт на нескольких компьютерах. Работает: экран только читает. Но каждое окно обращается к скрипту раз в 15 секунд и расходует дневную квоту.

Не нашли свой случай — заведите Issue с описанием: что делали, что увидели, код из истории интеграции.