Qubot Google Sheets Setup/ru

From QuData
Jump to navigation Jump to search

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

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

Для подключения таблиц следуйте шагам описанным ниже:

Шаг 1

Войдите или же создайте аккаунт на https://accounts.google.com

GoogleSheets1.png

Шаг 2

Откройте свои Google таблицы здесь https://docs.google.com/spreadsheets

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

GoogleSheets2.png GoogleSheets3.png

Шаг 3

Поделитесь Google таблицей с ботом:

В Google таблицах откройте электронную таблицу и нажмите кнопку Share(Поделиться).

GoogleSheets4.png

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

qudata-bot-service@qudata-services.iam.gserviceaccount.com

GoogleSheets5.png

Второй способ. Ссылка для общего доступа: в разделе Get link(Получить ссылку) измените статус Restricted(ограниченный доступ) на Anyone with the link(все, у кого есть ссылка), и нажать Готово.

GoogleSheets6.png

Обратите внимание, что вы можете контролировать доступ: если бот будет считывать данные только из таблицы Google, то достаточно роли Viewer, а если бот еще и сохраняет данные в таблицу Google, то требуется роль Editor. Вы можете изменить роль в любое время в настройках общего доступа.

Шаг 4

Настройте загрузку данных в таблицу в редакторе бота. Дополнительную информацию об этом можно найти в шаблонах редактора ботов (например, Trivia, шаблоны Order Food) или в нашем справочном центре.

Настройка работы с данными Google таблиц в боте

Выберите нужного вам бота. Зайдите в Editor(Редактор) бота.

Загрузка данных с таблицы

1. Выберите нужный шаг в вашем боте где нужно загрузить данные с google таблицы(К примеру Main).

EditorGoogleSheet1.png

2. Выберите/создайте элемент, действием которого должна быть загрузка данных с таблицы. Это может быть Buttons(кнопка), элемент Actions(действие), просто ввод любого текста пользователем(click to show actions when) и другие элементы.

EditorGoogleSheet2.png EditorGoogleSheet3.png
3. В поле Item properties у вас появится возможность добавить свойство:

EditorGoogleSheet4.png EditorGoogleSheet5.png
4. Выберите свойство load:

EditorGoogleSheet6.png

5. В свойстве load выберите из списка Google Sheets

EditorGoogleSheet7.png

6. В поле Google Sheets table url введите url(ссылку) вашей google таблицы

EditorGoogleSheet8.png

EditorGoogleSheet9.png
7. В поле Slot name введите имя переменной, в которой будут хранится данные с вашей таблицы в виде массива объектов:

EditorGoogleSheet10.png

Используйте эту переменную для работы с вашими данными.

Убедитесь, что вы дали доступ на чтение или редактирование своей таблицы

Запись данных в таблицу

Пройдите шаги 1-3 описанных выше в "Загрузка данных с таблицы" выбрав шаг на котором нужно сделать запись в таблицу.

4. Выберите свойство save:

EditorGoogleSheet11.png

5. В свойстве save выберите из списка Google Sheets

EditorGoogleSheet12.png

6. В поле Google Sheets table url введите url(ссылку) вашей google таблицы

EditorGoogleSheet8.png

EditorGoogleSheet13.png
7. В поле Data value введите данные, которые будут записаны в таблицу в указанном формате в виде объекта:
EditorGoogleSheet14.png EditorGoogleSheet15.png
Убедитесь, что вы дали доступ на редактирование своей таблицы

Работа с фильтрами

В боте можно получать выборочные данные или изменять существующие, для этого используются фильтры.
Фильтры представляют собой словарь данных следующей структуры: { 'СТОЛБЕЦ': ДАННЫЕ, ... }
В одном фильтре можно указывать несколько столбцов.
Все столбцы в одном фильтре считаются как логическое "И", то есть, фильтр будет искать такие строки, у которых во всех указанных столбцах совпадают все указанные данные.

Выборочная загрузка данных с таблицы

1. Настройте вашего бота на загрузку данных согласно инструкции выше.
2. Укажите в поле Data filter фильтр в виде словаря.
GoogleSheets16.png
3. В словарь SLOT_DATA будут записаны только те данные, значения из столбцов которых соответствуют введённым.


Изменение данных в таблице

1. Настройте вашего бота на сохранение данных согласно инструкции выше.
2. Укажите в поле Data filter фильтр в виде словаря.
GoogleSheets17.png
3. Данные из таблицы, которые соответствуют фильтру будут изменены.
Если фильтр не сработал, то данные записаны не будут.


Убедитесь, что вы дали доступ на редактирование своей таблицы