# Google Sheets

Добавление, обновление, поиск и получение строк Google Sheets в сценариях ChatRex.

Перед добавлением действий подключите Google Sheets, добавьте таблицу, выберите лист и настройте столбцы.

В актуальной версии ChatRex доступны четыре действия Google Sheets:

  1. Добавить строку.
  2. Обновить строку.
  3. Найти строки.
  4. Получить строку по ключу.
Доступные действия Google Sheets в ChatRex

# Добавить строку

Добавляет новую строку в конец выбранного листа.

Настройка:

  1. Выберите подключённую Таблицу.
  2. Проверьте выбранный Лист из таблицы.
  3. В блоке данных выберите Поле.
  4. Укажите Значение — фиксированный текст или данные из переменной бота.
  5. Нажмите Добавить поле, чтобы записать остальные значения.
  6. При необходимости включите автоматическую запись даты и времени.

Нельзя сохранить действие без заполненного поля и значения. Один столбец не следует добавлять в форму дважды.

Пример: после квалификации лида бот записывает имя, телефон, услугу и краткий итог диалога в новую строку.

# Обновить строку

Ищет строку по ключевому столбцу и обновляет указанные поля. Это действие заменяет прежние отдельные варианты Обновить по ключу и Upsert.

Настройка:

  1. Выберите таблицу.
  2. Проверьте Ключевое поле — оно берётся из настройки столбцов и не изменяется в карточке действия.
  3. Передайте Значение ключа, например телефон или номер заказа.
  4. Добавьте поля и новые значения.
  5. Выберите поведение, если строка не найдена:
    • ничего не делать;
    • создать новую строку.

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

Пример: найти клиента по телефону и записать новый статус. Если клиента ещё нет — создать строку с этим телефоном и остальными данными.

# Найти строки

Ищет несколько строк по указанному столбцу и возвращает результат боту списком.

Настройка:

  • Поле для поиска;
  • Значение — текст или переменная;
  • режим совпадения:
    • Содержит — подходит для части названия или описания;
    • Точное — значение должно совпасть полностью;
  • максимальное количество строк;
  • поля, которые нужно вернуть боту.

По умолчанию количество результатов ограничено. Не возвращайте все столбцы без необходимости: выберите только данные, которые нужны для ответа или следующего действия.

Пример: найти до пяти услуг, название которых содержит запрос пользователя, и вернуть название, цену и описание.

# Получить строку по ключу

Возвращает одну строку по уникальному ключу.

Настройка:

  1. Выберите таблицу.
  2. Укажите значение настроенного ключевого поля.
  3. Выберите столбцы для возврата.

Если строка не найдена, действие возвращает результат без данных. В промпте предусмотрите отдельный ответ: попросить пользователя проверить значение, выполнить обычный поиск или предложить связаться с сотрудником.

Пример: найти заказ по номеру и вернуть клиенту его статус, сумму и дату обновления.

# Типы данных

ChatRex использует типы, заданные в соответствии столбцов:

  • телефон приводится к единому формату;
  • число обрабатывается как числовое значение;
  • дата и дата со временем передаются в согласованном формате;
  • текст и email записываются в соответствующие столбцы.

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

# Пример инструкции для бота

Когда пользователь оставил имя и телефон и подтвердил отправку заявки, вызови действие «Добавить заявку в Google Sheets». Передай имя в поле client_name, телефон — в client_phone, выбранную услугу — в service. После успешной записи сообщи, что заявка принята. Не вызывай действие повторно в рамках одного обращения.

Для обновления:

Если пользователь с известным телефоном сообщил новые данные, вызови «Обновить клиента в Google Sheets». Найди строку по телефону и измени только полученные поля. Если строка не найдена, создай новую только после подтверждения пользователя.

# Проверка

Перед запуском проверьте:

  • добавление новой строки;
  • обновление существующей строки по ключу;
  • поведение при отсутствующем ключе;
  • поиск с точным и частичным совпадением;
  • отсутствие результата;
  • повторный вызов, чтобы бот не создавал дубли.