59

Создание библиотеки в гугл скриптах

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

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


Го к примерам.

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


Создаем новые ГТ и скрипт в ней

Пропишем функцию send(msg, chat_id) :


function send (msg, chat_id, api) {

//Отправляет сообщения в тлг. На вход функции дать сообщение и ID чата, в который нужно провести отправку

var payload = {

'method': 'sendMessage',

'chat_id': String(chat_id),

'text': msg,

'parse_mode': 'HTML'

}

var data = {

"method": "post",

"payload": payload

}

UrlFetchApp.fetch('https://api.telegram.org/bot' + api + '/', data);

}


Сохраняем проект и делаем деплой

Кликаем по шестеренке и выбираем Library

Кликаем Deploy внизу окна и видим ссылку на библиотеку

Из всей ссылки нам нужен только id, который зашит между /d/ и /4 (согласно скрину выше) - 1iJ_IOEicfGzTlfbhDkcKIcBBEbh9UJ8WLf1FRQZ1Wu_Wnoqw6OBtITjZ. Копируем свой ид и идем дальше.


Создаем новые гугл таблицу и скрипт. В скрипте прописываем глобальные переменные

Помним, что значения этих переменных у вас будут свои.


Попробуем добавить тот же функционал, что и в посте про создание бота, с отправкой сообщения в чат телеграма. Но в этот раз мы не будем создавать функцию send(), а подключим библиотеку, в которой она уже есть.


Добавляем библиотеку

В открывшемся окне вставляем ID библиотеки (не ссылку, а ид) и кликаем Look up

Если подключение библиотеки прошло успешно, в окне появятся дополнительные поля выбора версии и указания идентификатора.


Название идентификатора меняем на короткое и понятное и кликаем Add.

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

Напоминаю, что в библиотеке у нас 1 функция. К ней можно обратиться следующим образом: имяБиблиотеки.имяФункции

Когда вы прописываете имя библиотеки и ставите точку, вы видите список всех доступных функций. В нашем случае это только функция send. Выбираем ее и прописываем передаваемые параметры:

Demo.send("Hello World", chat_id, API_TOKEN)

Сохраняем проект, кликаем Deploy, обновляем Api_link, выполняем функцию api_connector и идем тестить работу этого бота (этот алгоритм действий также подробнее описан в статье про создания бота).

Новый бот отправляет сообщение в чат с помощью функции, которая зашита в библиотеке.

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

MS, Libreoffice & Google docs

764 поста14.9K подписчиков

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях


Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества