Архитектура Продукта ================================== Продукт представляет собой интеграцию взаимодействующих компонентов. Общая архитектура Продукта представлена на схеме ниже. .. image:: scheme.png :scale: 20 :align: center :name: Архитектура Продукта Интеграционный модуль ---------------------------------- **Интеграционный модуль (ИМ)** – основная часть Продукта, набор компонентов, осуществляющих обработку задач электронного документооборота. **Компоненты ИМ** (коннекторы к операторам ЭДО) обеспечивают двухстороннюю интеграцию с сервисами операторов ЭДО посредством использования программных интерфейсов высокого уровня (API): * автоматический мониторинг ящика и загрузка в базу данных входящих документов; * автоматическая передача оператору ЭДО исходящих документов, поставленных в очередь отправки; * автоматическая отправка и получение технологических извещений и подтверждений, предусмотренных регламентом; * запрос генерации печатных форм формализованных документов; * учет специфических особенностей интеграции и передачи данных по каналам связи каждого оператора ЭДО. Сервис ИМ может быть развернут на выделенном сервере или в облаке. База данных интеграционного модуля ------------------------------------------ **База данных ИМ** обеспечивает хранение следующей информации: * истории событий по каждому документу; * информации об электронных подписях. Продукт поддерживает возможность работы со следующими СУБД: * PostgreSQL; * MS SQL Server. API Продукта --------------- API предназначен для интеграции компонентов Продукта и внешних систем. API состоит из компонентов внутреннего API и компонентов внешнего API. * Внутренний API - компоненты API, реализующие бизнес-логику. * Внешний API - компоненты API, отвечающие за хостинг. Внутренний API осуществляет валидацию параметров запросов к API, читает данные из БД, ставит задачи интеграционному модулю, работает с архивами и криптографией. Один компонент внешнего API может использовать один или более компонентов внутреннего API. Внешний API содержит компоненты для интеграции с внешними системами. За счет модульной архитектуры API и точек расширения имеется возможность также создать кастомный API для интеграции с внешними системами. Integration API ~~~~~~~~~~~~~~~~~~~~ Веб-сервис **Integration API** - основной API Продукта, предназначенный для работы с документами и контрагентами. Integration API позволяет: * отправлять и получать документы; * принимать, отклонять и аннулировать документы; * получать доступ к вложениям и подписям; * запрашивать сведения о контрагентах; * получать, отправлять, принимать и отклонять приглашения контрагентов к ЭДО. Archive API ~~~~~~~~~~~~~~ Веб-сервис **Archive API** - вспомогательный API для работы с электронным архивом. Archive API позволяет реализовать загрузку файлов из архива и сохранение файлов в архив. Для хранения передаваемых документов и технических сообщений Продукт может использовать различные типы архивных хранилищ. Archive API предоставляет единый программный интерфейс для доступа к выбранной реализации архива. Crypto API ~~~~~~~~~~~~~ Для выполнения криптографических операций в компонентах Продукта используется вспомогательный API для работы с криптографией - веб-сервис **Crypto API**. Crypto API позволяет реализовать следующие операции: - поиск сертификатов в хранилище; - формирование отсоединенной ЭП; - шифрование контента; - расшифровка зашифрованного контента; - проверка соответствия контента и отсоединенной ЭП; - улучшение подписей до заданного уровня. Printforms API ~~~~~~~~~~~~~~~~~ Веб-сервис **Printforms API** - впомогательный API для работы с печатными формами документов. С его помощью можно генерировать печатные формы формализованных, полуформализованных и неформализованных документов. Dashboard ----------------- Для администрирования ИМ Продукта используется специализированная веб-панель мониторинга **Dashboard**, которая предоставляет следующие возможности: * Ведение настроек, необходимых для работы Продукта: * Настройка используемых операторов; * Настройка ящиков; * Настройка архивов; * Настройка сервиса криптографии и т.д. * Ведение пользователей и ролей. * Мониторинг процесса обработки электронных документов: * Формирование отчета по документообороту; * Формирование отчета по контрагентам и т.д. * Управление лицензиями. Модули на стороне учетных систем ----------------------------------------------------- На стороне учетных систем могут быть реализованы отдельно подключаемые модули, которые позволяют обмениваться электронными документами между учетной системой и интеграционным модулем непосредственно из интерфейса учетной системы. Каждый такой модуль представляет собой приложение, которое взаимодействует с интеграционным модулем посредством специализированного канала (например, HTTP). Возможно одновременное подключение нескольких учетных систем к одному ИМ (при подключении нескольких учетных систем для каждой из них должны быть заведены отдельные ящики в системах каждого из используемых ОЭД). .. _architecture-1c: TerraLink xDE Pro для 1С ~~~~~~~~~~~~~~~~~~~~~~~~ .. attention:: Для работы модуля TerraLink xDE Pro для 1С необходима :ref:`отдельная лицензия`. Модуль TerraLink xDE Pro для 1С предназначен для взаимодействия интеграционного модуля с информационными системами на платформе «1С:Предприятие 8» на базе конфигураций, поддерживающих подсистему «1С-ЭДО», и реализует функциональность отправки, получения и обработки электронных документов. .. _architecture-portal: Веб-портал ------------- .. attention:: Веб-портал - :ref:`отдельно лицензируемый компонент` Продукта. **Веб-портал** - пользовательский веб-интерфейс (личный кабинет пользователя) для осуществления документооборота без доступа к учетной системе. Веб-портал позволяет отправлять, получать, просматривать и обрабатывать электронные документы, а также обмениваться приглашениями к участию в ЭДО с контрагентами. О работе с модулем можно прочитать в разделе :ref:`web-portal`. .. _architecture-app-driver: Мобильное приложение водителя ----------------------------- .. attention:: Мобильное приложение водителя - :ref:`отдельно лицензируемый компонент` Продукта. Приложение «xDE Pro Перевозчик» - мобильное приложение для устройств на базе ОС Android, которое позволяет водителю получать информацию о назначенных на него электронных транспортных накладных (ЭТрН), а также обрабатывать их. О работе с приложением можно прочитать в разделе :ref:`transporter-app`.