LeadConverter
  • 📖База знаний LeadConverter
  • 🎓Обучение
    • Ботомания 1.0 - Курс для начинающих
  • 💟Как задать вопрос в поддержку?
  • ‼️ВАЖНО | Как правильно использовать основные инструменты
  • Как запустить бота?
  • Подключение мессенджеров
    • Instagram (новая версия)
    • Instagram
    • ВКонтакте
    • Telegram
    • Чат-боты в личных сообщениях Telegram
    • Facebook Messenger
    • Viber
    • WhatsApp
  • Боты
    • Горячие клавиши
    • Создаём бота | С чего начать?
    • Блоки в боте | Краткое описание
    • 🟪Триггеры. Стартовый шаг
      • Когда добавлен комментарий
      • Когда удалён комментарий
      • Когда добавлен лайк
      • Когда убран лайк
      • Когда сделан репост
      • Канал упомянут
      • Канал упомянут в истории
      • Покинул сообщество
      • Вступил в сообщество
      • Заблокирован в сообществе
      • Изменено сообщение в чате
      • Добавлен комментарий в обсуждениях
      • Изменен комментарий в обсуждениях
      • Восстановлен комментарий в обсуждениях
      • Написан комментарий под товаром
      • Изменен комментарий под товаром
      • Восстановлен комментарий под товаром
      • Разблокирован в сообществе
      • Заполнена лид-форма
    • 🟦Блок «Сообщение»
      • Кнопки
        • Режимы кнопок
        • Режим совместимости
        • Скрывать после нажатия
        • Запрет повторного нажатия
        • Типы кнопок
      • Реакция на бездействие
      • Подстановка переменных
      • Отправка медиафайлов
      • Порядок сообщений
      • Режим синхронизации
      • Вопрос | Сохраняем ответ пользователя
      • Товар
    • 🟩Блок «Задержка»
    • 🟥Блок «Действие»
      • Отправить через вебхук
    • 🟧Блок «Условие»
    • Блок "Рандомайзер"
    • Блок «Разделитель»
    • Копирование ботов в другую кампанию
    • Обработка событий вне сценария
  • Мини-лендинги | Подписные страницы
    • Настройка формы мини-лендинга
    • Настройка аналитики мини-лендинга
    • Результат
    • Прямые ссылки
    • Кнопки мессенджеров на сайт | JS-Виджет
  • Подписчики
  • Рассылки
  • ВК-лендинги
  • Сообщения (Диалоги с подписчиками)
  • Товары
    • Товары
    • Подписки
  • Интеграции
    • QuizGo
    • Google-таблицы (Google Sheets)
      • Записываем данные в новую строку без обновления данных
      • Записываем данные в таблицу с обновлением данных
      • Поиск данных по таблице и передача их боту
    • GetCourse
      • Подключение GetCourse к LeadConverter
      • Настройка передачи переменных из LeadConverter в GetCourse
      • Настройка добавления подписчка в GetCourse из LeadConverter
      • Настройка изменения групп подписчика в GetCourse
      • Формируем товар в GetCourse
      • Передача данных из GetCourse в LeadConverter
    • AmoCRM
      • Передача данных в AmoCRM
    • Bitrix24 (Ручная)
    • ChatGPT
      • Подключаем ChatGPT с использованием токена от LeadConverter
      • Подключаем ChatGPT с использованием собственного токена
      • Заполняем поля в интеграции данными
      • Подключаем ChatGPT к боту
      • Инструкция по работе с шаблоном ChatGPT
  • API Методы
    • Подготавливаемся к работе с API
    • broadcasting
      • sendMessageBatch
    • bot
      • start
      • startWithVariables
      • startFromStage
    • email
      • addSubscriber
    • file
      • uploadFromUrl
    • group
      • get
      • set
      • unset
    • message
      • send
      • sendToMany
      • sendToGroup
    • subscriber
      • get
      • has
    • variable
      • get
      • set
      • setMany
    • recurrent
      • disableAutoWithdraw
      • enableAutoWithdraw
    • Вопросы по API
      • Почему я скопировал пример но он не работает
      • Почему некоторые методы указаны дважды
  • Платёжные системы
    • Продамус (Prodamus)
      • Подключение рекуррентных платежей в Продамус (Prodamus)
    • ЮКасса (ЮKassa)
      • Подключение рекуррентных платежей в ЮКассе (ЮKassa)
    • ЮМани (ЮMoney)
    • Робокасса (Robokassa)
      • Подключение рекуррентных платежей в Робокассе (Robokassa)
    • IntellectMoney
      • Настройка магазина IntellectMoney
      • Подключение рекуррентных платежей в IntellectMoney
    • Тинькофф (Tinkoff)
      • Подключение рекуррентных платежей в Тинькофф (Tinkoff)
    • СloudPayments
      • Подключение рекуррентных платежей в СloudPayments
    • ЛидПей (LeadPay)
    • Payselection
    • КриптоКлауд (CryptoCloud)
    • Комиссия за перевод
  • Google Tag Manager (GTM) | Как настроить
    • Предисловие
    • Создаем Google Tag Manager аккаунт
    • Подключение тегменеджера к лендингам сервиса
    • Что нужно знать для комфортной работы
    • Настраиваем триггеры
    • Подключение Яндекс.Метрики к Google Tag Manager
    • Настраиваем цели Яндекс.Метрики
    • Публикация изменений
  • Переменные
    • Переменные для получения информации о подписчике
    • Зарезервированные переменные
  • Функции
    • Склонение по родам
    • Дата и время
      • date_calc
      • date_diff
    • Склонение числительных
      • skl
    • Математические действия
    • Сокращение ссылок
    • Удаление в ссылке пустых параметров
  • Типы данных
    • [] Дата и время
  • Регулярные выражения
  • Партнёрская программа
    • ❓Как стать партнёром?
    • ❓Как получать информацию о регистрациях и оплатах?
    • ❓Как получить выплату?
    • ❓Что означает пункт "Доступный баланс"?
    • ❓Что означает пункт "Будет отправлено"?
    • ❓Что означает пункт "Ожидает подтверждения"?
  • Ретаргетинг ВКонтакте
  • Тарифы LeadConverter
    • Оплата подписки за чат-ботов
    • Баланс
      • Как списываются средства с баланса за ChatGPT?
  • Популярные вопросы
    • Популярные вопросы
      • Общие вопросы
        • Как узнать ID канала, подключённого в LeadConverter
        • Как боту получить разрешение на отправку сообщений?
        • Как сделать рассылку через бота
        • Кнопка быстрого звонка в чат-боте
        • Как узнать ID подписки в LeadConverter?
        • Как выдать доступ сотруднику в кампанию?
        • Написание одного старт-слова в разных ботах
        • Как очистить кэш браузера
        • Как принимать оплату на сайте с продолжением сценария в чат-боте после оплаты
      • Telegram
        • Как узнать ID Telegram-канала
        • Как узнать ID Telegram-группы (чата)
        • Написание /start в разных ботах
        • Как оформить текст в Telegram
        • Как отправить круги в Telegram
        • Как создать кнопку "Поделиться" в Telegram-боте?
        • Как добавить Telegram-бота на канал?
        • Как добавить Telegram-бота в группу (чат)?
        • Как отправить сообщение с кнопкой в Telegram-канал/чат?
        • Как узнать ID стикера в Telegram
        • Как отправить стикеры в Telegram?
        • Как добавить бота в Telegram-канал, если на канале более 200 подписчиков?
        • Как отправить анимированные эмодзи со случайным значением?
        • Как удалить пользователя из черного списка Telegram группы/канала
        • Как обновить и заменить токен Telegram-бота?
      • ВКонтакте
        • Как узнать ID поста ВКонтакте?
      • Instagram
        • Как узнать ID поста Instagram?
      • Viber
        • Как отправить кнопку в Viber первым сообщением
      • Facebook
  • Перенос подписчиков в LeadConverter
    • Перенос базы в LeadConverter
      • Перенос базы из Senler в LeadConverter
      • Перенос базы из BotHelp в LeadConverter
  • Доступные шаблоны
    • Список шаблонов
      • Создание бота "Проверка подписки на Telegram-канал и выдача лид-магнита"
      • Платный доступ в закрытый канал/группу через триггер
      • Как скопировать готовый шаблон бота в свою кампанию
      • Новогодний опрос + статистика
  • Примеры
    • Примеры ботов
      • Бот для счёта разницы во времени
      • Создание подписки через бота (рекуррентные платежи)
        • 1. Подача заявки на подключение рекуррентных платежей
        • 2. Подготавливаем ботов
        • 3. Создаём "Подписку" в товарах LeadConverter
        • 4. Настраиваем бота "Основной бот. Подписка"
        • 5. Настраиваем бота "Меню. Подписка"
        • 6. Настраиваем бота "Успешное продление подписки. Подписка"
        • 7. Настраиваем бота "Необходимо оплатить подписку вручную. Подписка"
        • 8. Настраиваем бота "Подписка скоро закончится. Подписка"
        • 9. Настраиваем бота "Подписка закончилась. Подписка"
      • Бот для "Клуба" без рекуррентных платежей
        • 1. Создаём товар для оплаты доступа
        • 2. Создаем бота
      • Добавление/удаление из Telegram-чата/канала
      • Бот тестировщик. 1 правильный ответ
      • Бот с партнёрской программой
      • Бот-квиз
      • Проверка подписки на канал и выдача бонуса
      • Проверка подписки на Telegram-канал
      • Выдача доступа в Telegram-канал после оплаты
      • Отправка геолокации с помощью Telegram-бота
      • Генерация картинок
      • Бот с акцией: купи товар в течение 48 часов, или цена изменится
        • 1. Создаём товар
        • 2. Создаём бота
          • Настройка бота с одним товаром
          • Настройка бота с несколькими товарами
  • Готовящиеся материалы
    • Материалы
      • Яндекс Метрика (оффлайн конверсия)
        • Настраиваем Яндекс Метрику для передачи оффлайн конверсии
          • Настраиваем счетчик Яндекс Метрики
          • Настраиваем цели Яндекс Метрики
        • Подключаем Яндекс Метрику (оффлайн конверсию) к LeadConverter
        • Настраиваем поля интеграции для передачи оффлайн конверсии в Яндекс Метрику
        • Подключаем Яндекс Метрику (оффлайн конверсию) к боту
      • Bizon365
        • Подключаем Bizon365 к LeadConverter
        • Настраиваем передачу данных между Bizon365 и LeadConverter
        • Создаем сценарии ботов для интеграции с Bizon365
          • Приглашаем пользователей на вебинар
          • Сообщение после проведения вебинара
      • Instagram
      • info
      • Bizon365(111)
      • Проверка подписки и выдача бонуса по кодовому слову в комментариях Инстаграм
      • Email
      • 🟧Блок «Условие»
        • Условие "Группа"
        • Условие "День"
        • Условие "Время"
        • Условие "Дата"
        • Условие "Мессенджер"
        • Условие "Канал"
        • Условие "Произвольный ввод"
        • Условие "Имя" и "Фамилия"
        • Условие "Пользователь подписан на канал"
        • Условие "Пользователь не подписан на канал"
        • Переменные в условии
      • Какие лимиты на файлы установлены в мессенджерах?
      • Как передать бота заказчику в Telegram
      • Создание бота «Тестирование с подсчетом баллов и выдачей результата»
      • Facebook
Powered by GitBook
On this page
  • 2. Создаем бота и вебхук для отправки данных в Google-таблицы
  • Как искать данные по любому столбцу?
  • Как правильно записать ответ от Google-таблиц?

Was this helpful?

  1. Интеграции
  2. Google-таблицы (Google Sheets)

Поиск данных по таблице и передача их боту

PreviousЗаписываем данные в таблицу с обновлением данныхNextGetCourse

Last updated 1 year ago

Was this helpful?

У нас есть исходные данные в таблице

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

Переходим на сайт

Нужно заходить на сайт под тем же аккаунтом, что мы создали таблицу, иначе скрипт будет работать некорректно

Нажимаем на "+ Создать проект"

Даем название проекту "Поиск данных по таблице. Квиз"

Далее вставляем удаляем текст в рабочей области и вставляем следующий код:

function doGet(e) {
  var sheet = SpreadsheetApp.openById("ВСТАВЛЯЕМ ID ТАБЛИЦЫ ИЗ 1 ПУНКТА ИНСТРУКЦИИ");

  // Принимаем значение, которое будем искать
  var Value = e?.parameter?.Value;
  // Принимаем столбец, в котором будем искать ("A", "B", "C"... "Z")
  var Column = e?.parameter?.Column;

  var lastRowIndex = sheet.getLastRow() + 1;
  var index = lastRowIndex;

  // Ищем значение по всем строкам таблицы (со 2й строки, в первой - заголовки)
  // если нет заголовков можно поменять let i = 2 на  let i = 1
  //      здесь
  for(let i = 2; i < lastRowIndex; i++) {
    if(sheet.getRange(Column + i).getValue() == Value) {
      index = i;
      break;
    }
  }


  let response = {}

  "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    .split("")
    .forEach(el => {
      response[el] = sheet.getRange(el + index).getValue();
    })


  var obj =  {
    response,
  }

  return ContentService.createTextOutput(JSON.stringify(obj)).setMimeType(ContentService.MimeType.JSON);
}

Не забываем, первым делом, заменить текст ВСТАВЛЯЕМ ID ТАБЛИЦЫ ИЗ 1 ПУНКТА ИНСТРУКЦИИ, на ID таблицы, чтобы скрипт понимал куда писать данные

Что мы сделали в этом скрипте?

Ничего больше делать не надо :) Просто копируем шаблон, вставляем ID таблицы и опубликовываем скрипт :) Все настройки по поиску мы будем указывать в LeadConverter, когда будем собирать бота.

Скрипт готов, его осталось опубликовать и настроить передачу из бота.

Нажимаем на кнопку "Начать развертывание", далее "Новое развертывание"

Заполняем "Описание" и выбираем "У кого есть доступ" - пункт "Все"

Далее, нажимаем "Начать развертывание"

Повляется окно с запросом доступов к нашим данным, нажимаем "Предоставить доступ"

В сплывающем окне, выбираем аккаунт, с которого мы создали скрипт

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

Нажмимаем на "Advanced" (В русской версии будет кнопка "Дополнительно")

​

Далее в окне, нажимаем "Разрешить"

Далее у нас окрывается окно с ID развертывания и URL

Нам нужен URL, его мы будем использовать в боте и передавать данные

После внесения изменений и каждого нового развертывания, ID и URL меняются!

URL нужно будет заменять после внесений изменений в действии "Отправить через вебхук"

Нажимаем кнопку "ОК" после URL и нажимаем кнопку "Готово"

2. Создаем бота и вебхук для отправки данных в Google-таблицы

Первым делом, создаем блоки для менеджера, чтобы бот вначале получал информацию, что ищем и потом искал в Google-таблице

Первым делом создаем блок "Сообщение" с элементом "Вопрос" и выбираем тип ответа пользователя "Целое число"

Создаем действие и выбираем "Отправить через вебхук".

Заполняем все поля:

URL-адрес обработчика: Вставляем скопированную ссылку после публикации скрипта Отправить запрос методом: GET Сохранить результат: return

Далее нажимаем на "+Добавить параметр" и заполняем построчно параметры запроса

Value значение {{id_child}} Column значение A

Что мы сделали?

В Value указали данные, которые мы хотим найти В Column указали колонку, в которой мы ищем данные (От A до Z). Буква на английском языке.

Нажимаем "Сохранить" Далее, нам нужно полученный ответ от Google-таблицы вывести одним сообщением

Создаем блок "Сообщение" и пишем текст

Найдены данные!
‌
‌ID: {{return.response.A}}
‌Name: {{return.response.B}}
‌Channel: {{return.response.C}}
‌Room: {{return.response.D}}
‌Finishing: {{return.response.E}}
‌Floor: {{return.response.F}}
‌Budget: {{return.response.G}}

Сохраняем, соединяем блоки и приступаем к тестированию.

Поиск по таблицам готов :) Теперь можно разобрать вопросы, которые могут возникнуть

Как искать данные по любому столбцу?

Нужно посмотреть в таблице, какая буква у этого столбца и указать ее в действии "Отправить через вебхук" в параметрах Column

Как правильно записать ответ от Google-таблиц?

У нас есть ответ по столбцу A Выглядит он так

{{return.response.A}}

Если мы заменим букву A на G, то мы "вытащим" ответ от Google-таблиц из столбца G

{{return.response.G}}

Если в вебхуке, заменяется переменная в пункте "Сохранить в переменную", то запись изменится так: {{переменная из вебхука.response.A}}

И так можно вытащить ответ из каждого столбца, если там заполнены данные

У вас остались вопросы? Задавайте их в нашу техподдержку 👇

Нажимаем на иконку и выбираем "Веб-приложение"

Переходим в

LeadConverter
💟Как задать вопрос в поддержку?
https://script.google.com/