Предварительная настройка Google-таблицы
Для добавления данных в Google-таблицу предварительно настройте доступы. Для этого перейдите в таблицу и в правом верхнем углу выберите Настройки доступа. В параметрах доступа укажите Все, у кого есть ссылка.
Добавление скрипта для работы с данными
Добавьте функцию получения данных и декодирования строковых переменных.
Для этого:
- Выберите в Google-таблице пункт меню Расширения и далее - Apps Script.
- Напишите функцию для обработки полученных данных.
В примере ниже в качестве данных передается три переменные:
userName
– строковый тип данных;userLastname
– строковый тип данных;phone
– целый тип данных.
Текст функции:
function doPost(request) {
const {userName,userLastname,phone} = request.parameter //получение параметров
const sheet = SpreadsheetApp.getActiveSheet() //получение активного листа
const lastRow = sheet.getLastRow() + 1 //получение последней строчки таблицы
sheet.getRange(`A${lastRow}`).setValue(userName) //вывод значения переменной userName в столбец А
sheet.getRange(`B${lastRow}`).setValue(userLastname) //вывод значения переменной userLastname в столбец B
sheet.getRange(`C${lastRow}`).setValue(phone) //вывод значения переменной phone в столбец C
return 0
}
- Нажмите Начать развертывание и далее — Новое развертывание.
Каждое изменение функции требует новое развертывание.
Выберите тип развертывания - Веб-приложение.
При появлении окна с запросом доступа нажмите Предоставить доступ.
Нажмите Начать развертывание.
Скопируйте URL в поле Веб-приложение. Ссылка имеет следующий вид:
https://script.google.com/macros/s/AKf....
.Добавьте к скопированной ссылке параметры и присвойте значения переменным:
https://script.google.com/macros/s/AKf...?userName={{$session.userName}}&userLastname={{$session.userLastname}}&phone={{$session.phone}}.
Создание HTTP-запроса к Google-таблице (POST)
Перейдите в личный кабинет Studio и откройте проект SaluteBot на инструменте Graph.
Добавьте в проект блоки для ввода имени, фамилии и телефона.
На отдельный экран добавьте блок JS-код для кодирования строковых переменных и вставьте туда следующий код:
$session.userName = encodeURI($session.userName);
$session.userLastname = encodeURI($session.userLastname)
На этот же экран добавьте блок HTTP-запрос.
В поле URL вставьте ранее полученную ссылку.
В результате данные, полученные из чат-бота, будут добавлены в Google-таблицу.