Печеньки с предсказаниями
В этом уроке вы научитесь выдавать случайную строку из Google Таблицы. Это может быть удобно для создания игр либо для бизнес-решений — например, чтобы выводить пользователям предложения случайным образом.
В ходе урока вы создадите игру Печеньки с предсказаниями.
Создание Google Таблицы
Создайте новую Google Таблицу и добавьте в нее столбцы number и line.
В столбец number добавьте нумерацию, а в столбце line разместите данные, которые будут выводиться клиенту — строчки с предсказаниями.

Далее вам необходимо опубликовать таблицу и получить URL для обращения к ней из сценария. Сделайте это согласно инструкции по чтению данных из Google Таблиц.
Создание сценария
Добавление HTTP-запроса
В сценарии добавьте блок HTTP-запрос.
В поле URL вставьте ссылку, полученную на предыдущем шаге.
На вкладке RESPONSE нажмите . В поле Имя переменной напишите prediction, а в поле Значение — следующее выражение:
_.findWhere($httpResponse, {"number": _.random(1, 5)})
В выражении используются функции библиотеки Underscore.js:
_.findWhere(list, properties)— возвращает первый элемент массива, соответствующий заданным свойствам;_.random(min, max)— возвращает случайное целое число в указанном диапазоне, включая границы диапазона.

В данном запросе в столбце number выбирается случайное число от 1 до 5, а в переменную $prediction записывается значение строки, соответствующей данному числу.
Вы можете указать любой диапазон чисел, которые имеются у вас в таблице. Например, с 1 по 20:
_.findWhere($httpResponse, {"number": _.random(1, 20)})
Поля на вкладках BODY и HEADERS заполнять не нужно.
После заполнения всех полей нажмите Сохранить.
Выявление ошибок
От варианта Завершен с ошибкой сделайте связь с блоком Текст, в котором напишите ошибка $httpStatus. Этот экран поможет вам понять, в чем причина неполадки, если запрос не будет завершаться успешно.
Если ошибка будет возвращена, она запишется в переменную $httpResponse. Если ошибка придет в формате JSON или XML, она конвертируется в JavaScript объект, в противном случае весь текст ошибки запишется в $httpResponse.
В переменную $httpStatus запишется код ошибки, который будет выведен на этом экране.

Если ошибка в сценарии, вернитесь к предыдущим шагам и найдите место, где ошиблись, или пройдите шаги заново.
Выдача строки с предсказанием
От варианта Завершен успешно сделайте связь с экраном с новым блоком Текст, в котором напишите $prediction.line.

Тестирование сценария
Нажмите Тестировать вверху страницы.
Если вы все сделали верно, то бот пришлет случайную строку из Google Таблицы.
Что можно добавить?
- Можно доработать этот сценарий, добавив кнопку еще, чтобы получить еще одно предсказание:

-
Можно добавить изображение с печенькой. Есть два способа сделать это.
- Добавить на экран блок Изображение и загрузить в него изображение либо указать ссылку на него.
- Добавить изображение в Google Таблицу и получить ее оттуда в сценарий.
-
Можете добавить в реплики бота смайлики.
-
Можно добавить в таблицу еще один столбец, чтобы выводить дополнительную информацию. Например, столбец
chance, в котором будут разные числа, означающие «шанс на удачу».

Для этого в блоке