Если вы не слышали ранее об Открытом Пакете Интеграций (что вполне вероятно), то небольшая вводная часть ниже, под катом. Для тех, кто уже знаком с ОПИ, данный раздел можно пропустить.
Открытый Пакет Интеграций (ОПИ) - это open-source набор методов для простой и быстрой интеграции с различными популярными API. Он состоит из аналогичных по функционалу 1С-расширения (CFE), OS-пакета и программы для Windows и Linux, которые предоставляют готовые функции для работы с целым набором различных онлайн-сервисов.
- ОПИ бесплатен и имеет открытый исходный код на GitHub. Вы всегда можете получить последнюю версию библиотеки на странице репозитория, а подписавшись - узнавать о выходе обновлений. Все релизы сопровождаются статьями на Инфостарт и разделами единой документации. На Инфостарт вы можете подписаться уже хоть сейчас, а про документацию я расскажу далее.
- Удобная единая документация. Она расположена на сайте opi.neocities.org и содержит в себе всю информацию, необходимую для работы: инструкции по предварительным действиям для начала интеграции, описания всех методов с параметрами и возвращаемыми значениями, примеры кода и т.д. Каждый API имеет там свой раздел.
- Простая установка. ОПИ распространяется во множестве вариантах: как XML файлы расширения, как EDT проект расширения, как файл расширения формата .cfe (версия 1С 8.3.9), как файл пакета для OneScript и еще в целом наборе пакетов и файлов для Windows и Linux. Из этого набора вы всегда сможете выбрать тот способ установки, который лучше подойдет для вашей конкретной задачи
На момент последнего обновления данной статьи, доступны следующие API:
Наиболее актуальную информацию можно посмотреть в репозитории или на вводной странице документации.
Google Sheet - сервис из набора Google Workspace для работы с электронными таблицами. Как и любой другой сервис от Google, Sheets имеет свой API, основные методы которого и были реализованы в сегодняшнем обновлении:
- Методы работы с книгами
- Создание книги
- Получение информации о книге
- Изменение названия книги
- Методы работы с листами
- Добавление листов
- Удаление листов
- Копирование листов из одной книги в другую
- Работа с данными ячеек
- Установка значений ячеек
- Получение значений ячеек
- Очистка ячеек
Вы могли заметить, что тут нет метода для удаления книг: дело в том, что книги Google Sheets - это просто файлы расширения .gsheet на вашем облачном диске. Так что если есть необходимость их удалять или перемещать, то вам также пригодятся методы для работы с Google Drive, которые уже есть в ОПИ на данный момент
Также стоит отдельно сказать про работу со значениями ячеек. Для, того, чтобы работа с библиотекой была более интуитивной, описание значений, которые необходимо записать в ячейки, представляет из себя соответствие, где ключ - это координата ячейки формата А1, а значение - непосредственно значение одной ячейки. Подобное соответствие легко сформировать, например, в цикле из таблицы значений. Диапазоны же вида A1:Z999 не используются
Все остальное, начиная с инструкции по настройке API, заканчивая описаниями методов с примерами кода, вы можете найти в документации. Если вы уже пользуетесь библиотеками для Google Drive или Google Calendar, до делать практически ничего не придется - надо лишь включить Sheets в консоли Google Cloud и заново создать токен
Немного новостей
Новостей проекта ОПИ сегодня немного
Во-первых, документация переехала с домена второго уровня от neocities (opi.neocities.org) на полноценный адрес - openintegrations.dev. Старый URL, при этом, все равно остается валидным - при переходе по нему вас просто перенаправит на новый. Так что если документация ОПИ у вас где-то в закладках, то их можно не исправлять. В любом случае, актуальный адрес всегда можно найти на странице репозитория
Во-вторых, в данный релиз вошло два исправления по Telegram API: метод ПолучитьОбновления() теперь имеет два новых параметра - Таймаут и Отступ, которые нужны для реализации Long Poll. Кто знает - тот знает. А также добавлен новый метод СкачатьФайл(), который позволяет получить двоичные данные файла из Telegram по его ID (до 20 МБ)
Ну а пока это все. Следите за обновлениями ОПИ на Инфостарт и Github!
Спасибо за внимание!
Репозиторий ОПИ: github.com/Bayselonarrend/OpenIntegrations
Последний релиз: github.com/Bayselonarrend/OpenIntegrations/releases/latest
Другие статьи про Открытый пакет интеграций на Инфостарт:
Мой GitHub: https://gitub.com/Bayselonarrend Лицензия MIT: https://mit-license.org