Открытый пакет интеграций (ОПИ) - это набор методов для работы со многими популярными API, при помощи которого вы легко сможете организовать взаимодействие с различными онлайн сервисами, даже не будучи глубоко погруженными в тонкости их работы. ОПИ - open-source проект, а это означает, что он распространяется абсолютно бесплатно и имеет открытый исходный код, который можно найти на странице нашего GitHub-репозитория. Но обо всем по порядку
Какие сервисы доступны в ОПИ?
На данный момент в поставке ОПИ доступны методы для работы c 15-ю различными API, а именно:
Telegram - один из самых популярных мессенджеров на данный момент. В ОПИ доступно более 30 методов для работы с ним, которые включают в себя отправку сообщений с различными вложениями, функции администрирования, работу в режиме форума и многое другое
VK - одна из наиболее популярных в СНГ социальных сетей и по совместительству сервис с одним из самых разнообразных API. В ОПИ вы можете найти методы для работы с VK в таких аспектах как постинг, работа с обсуждениями, получение статистики, работа с рекламным кабинетом, работа с товарами и много чем еще
Viber - также не нуждающийся в представлении сервис быстрых сообщений. В пакете его Bot API реализован практически в полном объеме и позволяет как отправлять сообщения с различным наполнением, так и получать различную информацию о пользователях
Twitter - популярная социальная сеть, одна из крупнейших в мире. В пакете вы найдете небольшую библиотеку, которая, тем не менее, полностью реализует возможности бесплатного плана Twitter API - дает возможность создавать твиты с различным наполнением
Notion - сервис для создания облачных заметок и таблиц, с возможностью их публикации в публичный доступ. За примерами долго ходить не надо: на Notion работает OpenYellow - агрегатор open-source проектов для 1С. В ОПИ реализованы методы работы с ним по части баз данных, страниц, блоков и пользователей
Яндекс.Диск - отечественное облачное хранилище от компании Яндекс. Обладает API с хорошими возможностями для работы со своим удаленным диском, которые, собственно, и были реализованы в ОПИ: загрузка, скачивание, перемещение, удаление и еще очень много всего
Google Calendar - удобный планировщик из набора Google Workspace, планировать события с которым становится куда проще. Особенно если подтянуть их из 1С: создание и изменение как событий, так и целых календарей доступно в данной библиотеке
Google Drive - второе облачное хранилище в нашем списке, интересное в первую очередь возможностью загрузки файлов любых размеров по частям через API - в том числе и в нашей библиотеке. Набор других методов для разнообразных манипуляций с файлами также прилагается
Google Sheets - сервис электронных таблиц все из того же Google Workspace. Довольно популярен и сам по себе, а с методами ОПИ для работы с книгами, ячейками и листами станет еще удобнее
Slack - широко известный в узких кругах корпоративный мессенджер с обширными возможностями для интеграции: создавайте сообщения, чаты и даже целые каналы через один вызов метода прямо из 1С!
Airtable - облачная служба, позволяющая легко создавать и использовать реляционные базы данных, информация в которых будет хранится онлайн, на облаке сервиса. Через ОПИ вы можете управлять базами, таблицами, полями и записями, находящимися там
Dropbox - файловый хостинг и облачное хранилище - одно из самых популярных в мире. В ОПИ для данного сервиса доступны методы работы с файлами/каталогами, настройки общего доступа и административные функции
Bitrix24 - популярная отечественная CRM система и платформа для управления проектами. В ОПИ для нее доступно большое количество методов в самых разных направлениях: задачи, чаты, учет рабочего времени, файлы, живая лента и многое другое
VK Teams - отечественный корпоративный мессенджер, являющийся одной из наиболее известных альтернатив на замену ушедшим зарубежным решениям. В ОПИ вы можете найти все возможные методы, позволяющие создать и управлять собственным чат-ботом
Ozon - один из самых популярных маркетплейсов в России и странах СНГ: удобный сервис для потребителей и отличный канал сбыта для продавцов. В данной библиотеке есть реализация для части функционала его API для работы с товарами и остатками
Какие есть варианты поставки?
Открытый пакет интеграций - это, в первую очередь, библиотека методов для 1С:Предприятие, но также и пакет для OneScript и даже полноценное приложение для Windows и Linux! Всего ОПИ представлен в 8 вариантах, о которых я сейчас и расскажу
1С:Enterprise
Данные варианты релизов - различные формы поставки расширения для платформы 1С:Предприятие
OpenIntegrations.cfe - стандартный вариант поставки расширения конфигурации 1С:Предприятие. Для начала работы достаточно загрузить его в список расширений вашей конкретной конфигурации. Разработка ведется в режиме совместимости 1С 8.3.9
XML.zip - это zip-архив, который содержит в себе файлы стандартной выгрузки расширения 1С "в файлы". Аналогично варианту с CFE, распакованный архив можно использовать для загрузки расширения через панель Расширений конфигурации в конкретном проекте
EDT.zip - это zip-архив, который содержит в себе файлы проекта расширения EDT. Этот вариант поставки предназначен для быстрого старта в тех случаях, когда разработка основной конфигурации ведется в 1C Enterprise Development Tools
CLI
Данные варианты релизов - различные формы поставки OInt CLI - кросплатформенного приложения для терминала/командной строки, реализующего полный функционал библиотеки ОПИ без привязки к тех. стеку 1С/OS. Системные требования OInt - системные требования OneScript: .Net Framework 4.8 (Windows) или сопоставимая версия Mono (Linux). Подробнее про CLI версию тут
oint.exe - исполняемый файл, который, несмотря на Windows-ориентированное расширение, является кросплатформенным. Для запуска требуется .Net Framework 4.8 или Mono совместимой версии
oint_x.x.x_installer.exe - это Windows-установщик. Рекомендуемый способ установки для ОС Windows, так как при его использовании автоматически создается каталог программы и прописывается PATH (после перезагрузки компьютера)
oint_x.x.x_all.deb - это DEB-пакет, предназначенный для установки OInt в Debian/Ubuntu дистрибутивах. При его использовании зависимости Mono устанавливаются автоматически, следовательно никаких дополнительных действий для начала работы не требуется
oint-x.x.x-1.el7.x86_64.rpm - это RPM-пакет, предназанченный для установки OInt в RHEL/Fedora/CentOS дистрибутивах. При его использовании зависимости Mono устанавливаются автоматически, следовательно никаких дополнительных действий для начала работы не требуется. Также не требуется запуск через mono
, как в случае с exe
OneScript
Данные варианты релизов предназначены для использования в OneScript-проектах
oint-x.x.x.ospx - это OSPX пакет, предназначенный для установки через пакетный менеджер OPM. Вы можете использовать его для оффлайн установки при помощи команды opm install -f "./OInt-x.x.x.ospx"
. Если отсутствие интернета на машине не предполагается, гораздо проще установить OInt напрямую из хаба пакетов. Скачивания файла для этого не требуется, достаточно выполнить команду opm install oint
А скачать подходящий для вас вариант вы всегда можете в релизах репозитория на GitHub!
Ссылка: Тык!
Документация
Помимо непосредственно кодовой базы, у ОПИ есть также своя большая и очень подробная документация по адресу openintegrations.dev. В ней есть все, начиная с инструкции по получению вводных данных для начала работы с каждым конкретным API...
..заканчивая полным описанием каждого метода с примерами кода на 1С, команд для CLI версии и возвращаемого значения
Контроль качества
ОПИ разрабатывается с посильным использованием многих современных технологий, позволяющих повысить качество и надежность продукта:
- Разработка ведется в EDT с соблюдением встроенного синтаксического контроля
- Каждый новый релиз проходит контроль качества SonarQube - бэйдж есть на странице репозитория
- Все методы в пакете покрыты тестами на YaxUnit (1С) и 1testrunner/asserts (OneScript). Результат выполнения последних вы можете даже посмотреть в Actions на Github
Благодаря такому подходу, снижается риск случайных багов и повышается сопроводимость, что означает меньший шанс словить ошибку при использовании пакета "в бою"
В заключении
Кроме этой статьи, почти каждое новое обновление Открытого пакета интеграций сопровождается своей статьей на Инфостарт, где новый функционал разбирается отдельно. Их список будет ниже. Ну а в целом у меня все!
Качайте ОПИ по ссылкам ниже и не забудьте обязательно поставить звездочку на Github - это поможет большему количеству людей узнать о проекте
Спасибо за внимание!
Репозиторий ОПИ: github.com/Bayselonarrend/OpenIntegrations
Последний релиз: github.com/Bayselonarrend/OpenIntegrations/releases/latest
Другие статьи про Открытый пакет интеграций на Инфостарт:
Мой GitHub: https://gitub.com/Bayselonarrend Лицензия MIT: https://mit-license.org