Ниже будет наглядно показано, как с помощью блока Запрос к серверу можно получить данные из таблицы в Google Docs. В качестве примера используется таблица, которая состоит из двух столбцов (ФИО и Телефон). После запуска готового сценария вы сможете выбрать столбец, из первой строчки которого робот получит и отобразит данные.
Для создания сценария выполните следующее:
- В боковом меню разверните раздел Сценарии и затем выберите пункт Сценарии.
2. Создайте новый сценарий. Например: Получение данных из таблицы Google.
3. Нажмите кнопку в строке созданного сценария.
4. Разместите в сценарии блок Результат с двумя переменными: url и sheet.
- В качестве значения переменной url укажите адрес вашей таблицы. В качестве значения переменной sheet введите номер листа таблицы, на котором содержится интересующая вас информация (например, лист 1).
Информация |
---|
Вы можете не создавать блок Результат с указанными переменными, а просто использовать значения этих переменных в блоках сценария. Но если адрес таблицы изменится, или вам потребуется получить данные с другого листа, то вам придется вносить изменения в разных блоках сценария. |
- В поле Выберите тип действия оставьте вариант значение Без действия.
Подсказка |
---|
Адрес таблицы можно получить в настройках доступа к таблицы. Для этого нажмите кнопку Настройки Доступа и затем в открывшемся меню нажмите кнопку Копировать ссылку. Убедитесь, что в секции Общий доступ выбран вариант выбрано значение Все, у кого есть ссылка. Image Modified |
5.Добавьте в сценарий блок Вопрос. В поле Вопрос (произносится роботом) введите следующий текст: Какую информацию нужно отобразить: ФИО или номер телефона?
6. После блока Вопрос разместите блок Запрос к серверу. Задайте и задайте следующие параметры:
- В поле Тип авторизации выберите вариант значение Отсутствует. При обращении к вашей таблице авторизация не требуется, поскольку так как доступ к таблице имеют все, у кого есть ссылка на эту таблицунее.
- В поле Выберите тип запроса укажите Get. Именно этот запрос используется для получения данных.
- В поле URL введите следующее значение: https://script.google.com/macros/s/AKfycbywN2f6PJs_2OhVSgDaN1oUEK9N-OmBuancUMJA-wuIfPXovZ0PJnY9iAsZ12sYd_LP/exec?sheetURL={url}&sheetName={sheet}, где:
- https://script.google.com/macros/s/AKfycbywN2f6PJs_2OhVSgDaN1oUEK9N-OmBuancUMJA-wuIfPXovZ0PJnY9iAsZ12sYd_LP/exec? – это адрес, на который будет отправлен запрос
- sheetURL={url} – параметр, значением которого является адрес вашей таблицы. В качестве значения этого параметра указано имя переменной url. Важно: при указании имени переменной используются фигурные скобки
- sheetName={sheet} – параметр, значением которого является номер листа с данными. В качестве значения этого параметра указано имя переменной sheet. При этом также используются фигурные скобки
Информация |
---|
При указании имени переменной нужно использовать фигурные скобки. Переменные url и sheet определяются были определены в блоке Результат в самом начале сценария (см. шаг 4). |
7. Выделите стрелку, которая соединяет блок Вопрос с блоком Запрос к серверу. В свойствах стрелки задайте следующие параметры:
- В поле Тип выходных данных выберите значение Ключевые слова.
- В поле Вариант ответа введите ФИО. Так будет называться кнопка, на которую сможет нажать пользователькоторую можно будет использовать, чтобы выбрать ФИО при ответе на вопрос робота выбрать столбец ФИО.
8. После блока Запрос к серверу разместите 2 блока Информация. В первом блоке задайте следующее информационное сообщение: ФИО будут следующими: {name}, где:
- {name} – это имя переменной, которая вернет ФИО из таблицы
Во втором блоке введите: Произошла ошибка.
9. Выделите стрелку, которая соединяет блок Результат с первым блоком Информация. С помощью этой стрелки робот будет извлекать из ответа нужное значение и сохранять его в переменную. В свойствах стрелки задайте следующие параметры:
- В поле Тип выберите Результат
- В поле Успешность запроса выберите вариант Успешно
- В разделе Условия добавьте условие, при помощи которого система выполнит проверку запроса на успешность: result.msg=Success
- В разделе Присвоить переменные при выборе ветки введите переменную c именем name и укажите ее значение равное result.data.0.ФИО, где:
- result – означает, что данные берутся из ответа
- data – содержимое таблицы
- 0 (ноль) – это номер строки после заголовка. В этом примере робот получит данные из первой строки таблицы (первая строка в массиве имеет номер 0, вторая – 1, третья – 2 и тд.)
- ФИО – это название столбца таблицы. В этом примере столбец называется ФИО
10. Выделите стрелку, которая соединяет блок Результат со вторым блоком Информация. В этой стрелке робот будет отлавливать ошибки. В свойствах стрелки задайте следующие параметры:
- В поле Тип выберите Результат
- В поле Успешность запроса выберите вариант Неуспешно
11. Добавьте в сценарий еще один блок Запрос к серверу, а также два блока Информация. В свойства блока Запрос к серверу задайте те же самые параметры, которые вы указали на шаге 6. В первом блоке Информация введите следующий текст: Номер телефона будет следующим: {phone}. Во втором блоке Информация введите: Произошла ошибка.
12. Выделите стрелку, которая соединяет блок Вопрос с блоком Запрос к серверу. В свойствах стрелки задайте следующие параметры:
- В поле Тип выходных данных выберите значение Ключевые слова
- В поле Вариант ответа введите Номер телефона. Так будет называться кнопка, на которую сможет нажать пользователь, чтобы при ответе на вопрос робота выбрать номер телефона
13. Выделите стрелку, которая соединяет блок Результат с первым блоком Информация. С помощью этой стрелки робот будет извлекать из ответа нужное значение и сохранять его в переменную. В свойствах стрелки задайте следующие параметры:
- В поле Тип выберите Результат
- В поле Успешность запроса выберите вариант Успешно
- В разделе Условия добавьте условие, при помощи которого система выполнит проверку запроса на успешность: result.msg=Success
- В разделе Присвоить переменные при выборе ветки введите переменную c именем name и укажите ее значение равное result.data.0.Телефон, где:
- result – означает, что данные берутся из ответа
- data – содержимое таблицы
- 0 (ноль) – это номер строки после заголовка. В этом примере робот получит данные из первой строки таблицы (первая строка в массиве имеет номер 0, вторая – 1, третья – 2 и тд.)
- Телефон – это название столбца таблицы. В этом примере столбец называется Телефон
14. Выделите стрелку, которая соединяет блок Результат со вторым блоком Информация, и задайте параметры стрелки, как показано на рисунке ниже.
15. Нажмите кнопку сохранить в верхней части редактора сценариев.
Сценарий создан. Запустите диалог и проверьте, что робот возвращает нужные значения.