Как запросить свободные ячейки в Google Sheets через Make
В статье приведен пример интеграции Google Sheets с SendPulse через Make, где вместо Google Sheets вы можете выбрать любой другой сервис, доступный в Make. Дизайн сервиса может отличаться от скриншотов, приведенных в статье. Также SendPulse выпустил прямую интеграцию с Google Sheets. Подробнее.
Вы можете интегрировать чат-боты SendPulse с другими сервисами для запроса информации через Make. В этой статье мы разберемся, как посмотреть ячейки в Google Sheets. Это позволит вам настроить сценарий, в котором вы сможете отправлять пользователю информацию о том, какие время и день свободны для записи.
Как начать работу
Войдите в свою учетную запись в Make, нажмите + Create a new scenario, чтобы начать создавать сценарий.
Вы можете сразу выбрать, какие сервисы подключить (в данном случае это Webhooks и Google Sheets), используя поиск, или находить и добавлять их непосредственно в самом конструкторе. Нажмите Continue в правом верхнем углу.
Как создать вебхук
Нажмите на блок с вопросом по центру экрана и выберите блок Webhooks — это будет стартовый блок, который запустит цепочку.
Вам необходимо создать сам вебхук, который будет принимать данные с вашей цепочки чат-бота. Из раскрывающегося списка выберите блок Custom webhook.
Нажмите Add, чтобы создать новый вебхук.
Введите имя для вебхука и нажмите Save.
Ваш вебхук создан. Скопируйте ссылку — ее нужно вставить в цепочку вашего чат-бота.
Теперь Make ожидает первого полученного вебхука, чтобы определить структуру данных, с которыми ему нужно будет работать.
Как добавить ссылку на вебхук в цепочку чат-бота
Войдите в личный кабинет SendPulse. Выберите нужного вам бота и откройте режим редактирования созданной цепочки.
Добавьте и разместите блок Сообщение. Добавьте кнопки для каждого значения, передаваемого в Make (в данном случае дня недели).
Вы можете от каждого дня недели отправлять отдельный запрос или добавить в блок сообщение Ввод пользовательских данных и записывать ответ с днем недели в переменную, а затем эту переменную передавать в блоке Запрос API.
Добавьте и разместите блок Запрос API сразу за блоком, после которого нужно отправлять вебхук. Выберите тип запроса POST и введите URL, скопированный из Make.
Вы можете отправлять персонализированные значения, например, день недели — для этого добавьте параметры в виде "day":"Понедельник"
в тело запроса элемента.
Пример запроса с переменной:
Нажмите Проверить запрос, чтобы запрос отправился в Make и распознал полученные данные.
Когда Make получит вебхук, в блоке Webhooks вы увидите сообщение Successfully determined.
Теперь можно добавлять другие блоки.
Как получить информацию из Google таблицы
Нажмите на знак вопроса или Add another module возле блока Webhooks и выберите Google Sheets c действием Search Rows.
Подключите свой Google Account, выберите таблицу и лист. Table contains headers выберите No. В Column range укажите A-ZZ.
Задайте фильтр, по которому нужно выбрать строку (например, по дню недели), и нажмите Ok. В первом поле выберите колонку из Google таблицы, во втором поле переменную с переданным днем.
Если у вас нет переменной вида 1. day
(где 1
— это номер блока в Make, в котором вы получили эту переменную из чат-бота), нажмите Run once в нижнем левом углу и запустите цепочку в чат-боте, в котором вы настроили вебхук. После первого прохождения цепочки переменная появится в Make.
Пример таблицы по дням недели:
Вы можете также запрашивать информацию по датам и выбирать различные страницы одного Google документа.
Как отправить записи из Google таблицы в чат-бот
Нажмите на знак вопроса или Add another module рядом с блоком таблицы. Выберите Webhooks > Webhook response.
В поле Body введите значения, которые будут возвращаться в чат-бот, и запишите их в формате JSON.
В данном случае, в переменную message будет записываться наличие свободных ячеек в Google Sheets. Для этого нужно задать функцию if в формате if(3.B; "8:00 занято,"; "8:00 свободно,")
, где 3.В
— значение в ячейке В, полученное из предыдущего блока Search Rows. Если ячейка не пустая, вебхук вернет "8:00 занято", в противном случае — "8:00 свободно".
Пример тела запроса (до форматирования вы можете добавлять свой текст, функции и переменные для иного отображения текста):
{"message": "{{2.`0`}}: {{if(2.`1`; "8:00 занято,"; "8:00 свободно,")}} {{if(2.`2`; "9:00 занято,"; "9:00 свободно,")}} {{if(2.`3`; "10:00 занято,"; "10:00 свободно,")}} {{if(2.`4`; "11:00 занято,"; "11:00 свободно,")}} {{if(2.`5`; "12:00 занято,"; "12:00 свободно,")}} {{if(2.`6`; "13:00 занято,"; "13:00 свободно,")}} {{if(2.`7`; "14:00 занято,"; "14:00 свободно,")}} {{if(2.`8`; "15:00 занято,"; "15:00 свободно,")}} {{if(2.`9`; "16:00 занято,"; "16:00 свободно,")}} {{if(2.`10`; "17:00 занято"; "17:00 свободно")}}"}
Нажмите ОK для сохранения параметров.
Вернитесь в редактирование цепочки вашего чат-бота в SendPulse к блоку с вебхуком.
Вы можете записать полученное значение в переменную, чтобы использовать фильтр и добавлять его в сообщение, как переменную. Или вы можете отобразить данные пользователю один раз без записи, используя запись вида {{$[‘переменная’]}}
. Читайте подробнее Использование данных в виде выражения JSON Path.
Добавьте блок Cообщение с ответом из вебхука. Вы можете добавлять свой текст, переменные подписчика или выводить только один ответ.
Повторите предыдущие действия в цепочке чат-бота для других дней недели.
Сохранение и запуск
Перед сохранением и выходом необходимо проверить, корректно ли все работает. Нажмите Run once и запустите цепочку в которой вы настроили вебхук. Если вы все настроили верно, под блоками Webhook и Google Sheets отобразятся зеленые галочки.
Чтобы активировать сценарий, переведите тумблер в положение ON.
Как просмотреть историю работы сценария
Перейдите в нужный вам сценарий. В списке Last runs или History нажмите Details по нужной операции. Вам откроется диаграмма всех блоков с историей выполнения блоков.
Кликните по нужному блоку, чтобы просмотреть информацию по нему. Вам будет доступна вся информация по блоку: какие значения принял и передал дальше.
Если какой-то из блоков не выполнился, он подсветится красным и при нажатии отобразится причина ошибки и подсказка, как ее исправить. Обратите внимание, что до устранения ошибки весь сценарий может приостановится и не выполнятся; операции будут становиться в очередь.
Если возникнут вопросы по настройке или сбоям сценария, можете обратится в службу поддержки Make.
Обновлено: 21.06.2024
или