ManyChat Help Portal
Submit a ticket

Интеграция с Google Таблицами


В этой статье рассказывается, как подключить аккаунт ManyChat к Google Таблицам, и как переносить данные контактов в таблицы с помощью действий в сценариях.

Подключение аккаунта Google

Прежде всего необходимо подключить аккаунт Google к ManyChat:

1. Перейдите в раздел Настройки -> Интеграции

2. Нажмите на кнопку Подключить аккаунт Google Таблиц и подтвердите авторизацию.

3. Теперь можно приступать к использованию Google Таблиц

Добавьте в сценарии действие Google Таблиц

Вы можете добавить действие интеграции в один из своих сценариев, и когда контакт будет проходить этот сценарий, данные контакта будут отправляться в Google Таблицы.

1. Создайте новую таблицу в Google Таблицах и подготовьте имена столбцов в первой строке документа


2. Перейдите к сценарию, куда вы хотите добавить действие
3. Создайте новый узел действия и выберите «Действия Google Таблиц»

Настройте действие для вашего листа

Действие «Insert Row» (Вставить строку)

1. Нажмите на ссылку Insert Row, чтобы открылся мастер Google Таблиц.

2. Выберите таблицу и лист и сопоставьте поля ManyChat полям листа. Отправлять можно все данные контакта, пользовательские поля, поля данных бота и теги.

Теперь можно запустить сценарий, и выбранные данные появятся в листе таблицы.

Примечание. Если вы решите изменить структуру листа, вам придется зайти в мастер для действия Google Таблиц и обновить поля.

Получение строки из Google Таблиц по значению подстановки 

Наша интеграция позволяет импортировать данные из Google Таблиц в пользовательские поля ManyChat. Рекомендуем сверяться со следующим скриншотом, чтобы не потерять нить повествования!

Нам необходимо создать:
1. Поле данных бота типа «coupon_id» типа «Число»
2. Пользовательское поле «user_coupon_id» типа «Число»
3. Пользовательское поле «coupon_code» типа «Текст» в ManyChat
4. Лист купонов в Google Таблицах.

Всё должно работать следующим образом: ManyChat берет значение из поля данных бота «coupon_id» типа «Число», ищет это число на листе и сохраняет его в указанном пользовательском поле — в нашем случае, «user_coupon_id».

Например, поле «coupon_id» теперь имеет значение 3 — это и будет значением подстановки. Затем ManyChat ищет «3» в столбце Google Таблиц «ID» — это и будет столбец подстановки.

Будет найдена строка с кодом «1111-11111111-111111-1111», которая будет отображена на выбранное пользовательское поле.

Создадим сценарий, выдающий контакту купон по нажатию на кнопку. В сценарии вызываются Google Таблицы (см. скриншот выше). Мы получаем оттуда идентификатор купона и проверяем с помощью узла «Условие», получил ли пользователь вообще какой-либо купон (это необходимо на случай, если купоны кончатся). Если купоны еще есть, мы увеличиваем значение «coupon_id» на 1 — при этом увеличивается значение подстановки и мы продвигаемся по списку, чтобы следующему контакту достался следующий купон.

Если значение подстановки больше, чем количество купонов, и купонов больше нет, в пользовательское поле «user_coupon_id» ничего не переносится, и мы отправляем второе сообщение «Купонов нет». 

Обратите внимание, что второй узел «Условие» проверяет, есть ли у пользователя тег «Coupon_received» который назначается пользователю, только если у него еще нет этого тега. Если пользователь отмечен тегом, он получит сообщение о том, что у него уже есть купон. В результате в одни руки выдается строго один купон.

Примечание. Если Google Таблицы не находят значения, идентичного нашему значению подстановки, то не возвращается ничего. А если у вас два или более одинаковых значений, пользователь получает первое из них.

Обновление существующей строки

Эта новейшая возможность позволяет обновлять информацию в таблице Google, которая уже была заполнена ранее, при этом в качестве значений подстановки используются столбец и пользовательское поле.

1. Создайте действие Google Таблиц и выберите вариант «Update Row».



2. Выберите лист, столбец подстановки и значение подстановки так, чтобы они соответствовали столбцу и пользовательскому полю, которые использовались в изначальном действии «Insert Row».

3. После выполнения настроенные пользовательские поля будут обновлены и заполнены текущими значениями.

Ограничения

Интеграция с Google Таблицами допускает не более 150 запросов в течение 60 секунд. Это ограничение действует для пользователя, включившего эту интеграцию под своим аккаунтом Google, т. е. если у пользователя несколько страниц ManyChat и подключена интеграция с Google Таблицами, то всех этих страниц действует общий лимит. При исчерпании этого лимита в разделе «Настройки -> Журнал событий» выводится ошибка «X or more requests were not processed due to the Google API limit» (X или более запросов не были обработаны из-за ограничения Google API), а действие интеграции не будет выполнено, однако обработка сценария при этом не останавливается.

В ManyChat реализован контроль количества запросов к Google Таблицам от одного пользователя, и все сценарии, вызывающие интеграцию и превышающие лимит, приостанавливаются на действии интеграции до тех пор, пока их можно будет выполнить без превышения лимита. В таких случаях в разделе «Настройки -> Журнал событий» вместо ошибки выводится новое предупреждение «X or more requests exceeded Google API limit and will be throttled and executed later» (X или более запросов превысили ограничение Google API, были приостановлены и будут выполнены позже).

Действия, которые должны выполняться триггерами и действиями, невозможно приостановить, поэтому мы попытаемся выполнить их в любом случае, не проверяя лимит.

Если вы прочитали эту статью и всё равно испытываете затруднения с интеграцией Google Sheets, прочитайте эту статью о диагностике неполадок данной функциональности.