Перейти к содержанию

Конфигурирование приложения#

Введение#

Механизм конфигурирования lexema 8.4 представлен отдельным пакетом с названием ecosoft-lexema8-config.

Настройка сервисов#

db#

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

  • main - профиль подключения к основной базе данных по умолчанию.
    • host - имя хоста.
    • database - имя базы данных.
    • dialect - диалект СУБД.
    • instanceName - имя экземпляра.
    • port - порт сервера БД.
    • user - логин.
    • password - пароль.
    • encrypt - позволяет установить зашифрованное соединение с SQL-сервером (по умолчанию false - шифрование выключено). Настройка доступна, если свойство dialect равно 'mssql'.
    • isolationLevel - уровень изоляции транзакций. Доступные значения: 'READ_UNCOMMITTED', 'READ_COMMITTED', 'REPEATABLE_READ', 'SERIALIZABLE'. По умолчанию 'READ_UNCOMMITTED'.
    • requestTimeout - время таймаута запросов в миллисекундах. По умолчанию 15000.
    • applicationName - значение строки подключения для ведения журнала сервера БД. По умолчанию ara.
    • pool - настройки пула соединений:
      • max - максимальное количество соединений в пуле. По умолчанию 20.
      • min - минимальное количество соединений в пуле. По умолчанию 0.
      • idleTimeoutMillis - максимальное время в миллисекундах, которое будет простаивать соединение в пуле, прежде чем будет освобождено. По умолчанию 10000.
  • radio - "in-memory" режим локальной базы данных SQLite с отключенным логированием, используется персистором для хранения недоставленных сообщений.
  • session - настройки подключения к локальному экземпляру Redis для хранения сессии.
    • host - имя хоста (по умолчанию 'localhost').
    • port - порт для запуска (по умолчанию 6389).
    • db - идентификатор базы для Redis (по умолчанию 0).

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

common#

"Общие" настройки, описывающие пути и шаблоны расположения объектов бизнес-логики.

  • context - путь к каталогу, который является "контекстом" для разрешения относительных путей (по умолчанию 'source'). Если путь является относительным, то будет добавлен к текущему рабочему каталогу.
  • external - объект, задающий пути к файлам с описанием внешних зависимостей.
  • manual - файл, заполняемый вручную (по умолчанию - external-manual.json).
  • auto - файл, заполняемый автоматически при сборке (по умолчанию - external-auto.json).
  • logging - настройки логирования.
  • allowSilent - включить/выключить логирование (по умолчанию false).
  • level - задает минимальный уровень логируемых событий. Доступные значения в порядке возрастания значимости: silly, debug, verbose, info, warn, error.
  • models - glob, описывающий расположение моделей (по умолчанию - models/**/*.js).
  • output - может быть как строкой, так и объектом.
  • Если строка: путь к каталогу для размещения сборок документации, а также клиентской и серверной части (по умолчанию - build). Если путь является относительным, то будет добавлен к каталогу, в котором расположен каталог context.
  • Если объект: может содержать свойства client, server и docs, представляющие собой пути к расположению каталогов для вывода файлов клиента, сервера и документации. Если пути относительные - то будут добавлены к каталогу, в котором расположен каталог context.
  • queries - glob, описывающий расположение запросов (по умолчанию - queries/**/*.js).
  • reportsDir - glob, описывающий расположение отчетов в контексте каталога отчетов (по умолчанию - *.report).
  • externalReportsDir - Название папки внешних отчетов проекта jsreport. По умолчанию external.
  • internalReportsDir - Название папки внутренних отчетов проекта jsreport. По умолчанию internal.
  • jsreports - glob, описывающий расположение отчетов (jsreport) (по умолчанию - **/!(*.*)).
  • reportsDir - путь к каталогу с отчетами (по умолчанию - reports).
  • sqlObjects - glob, описывающий расположение sql-объектов в контексте каталога sql-объектов (по умолчанию - *.sql).
  • sqlObjectsDir - путь к каталогу с объектами sql-сервера (по умолчанию - sqlObjects).
  • units - путь к файлу с описанием юнитов (по умолчанию - units.json).
  • dashboardTemplates - путь к каталогу с шаблонами дашборда (по умолчанию - dashboardTemplates).

bus#

Настройки "Шины" для взаимодействия между сервисами.

  • protocol - используемый протокол (по умолчанию 'amqp').
  • hostname - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию 5682).
  • username - логин.
  • password - пароль.
  • requestTimeout - время ожидания ответа от слушателя.

front#

Настройки клиентской части приложения.

  • theme - имя пакета, содержащего тему оформления (по умолчанию - 'ecosoft-lexema8-main-theme').
  • controls - перечень наборов контролов (по умолчанию - 'ecosoft-lexema8' ).
    • Если элемент массива - строка, то она будет использована как путь для импорта конструктора контрола, относящемуся к данному набору. Манифест набора будет загружен по пути {module_path}/lib/controls.manifest.json.
    • Если элемент массива - объект, то в качестве пути для импорта конструктора контрола будет использовано значение свойства modulePath, а в качестве пути для загрузки манифеста будет использовано значение свойства manifestPath.
  • publicPath - настройка "публичного пути" для производственной сборки клиента (по умолчанию - '/client/' ).
  • sourcemap - флаг, обозначающий необходимость генерации карт кода (по умолчанию - true ).
  • es - настройки используемой версии ECMAScript (по умолчанию - 'legacy' ). Перекрывается опцией "ie" интерфейса командной строки.
    • legacy - с поддержкой IE11.
    • modern - без поддержки IE11.
  • helpUrl - "базовая" ссылка для кнопки "Справка".
  • autoLogin - если значение true, то клиент автоматически авторизуется под аккаунтом, который указан в сервисе gate (по умолчанию false ).
  • enableSSO - флаг, обозначающий доступность sso аутентификации на клиенте (автоматический вход на странице логина).
  • adfsAuthType - Устанавливает тип авторизации через портал сервера федерации. Доступные значения: saml, openid. (по умолчанию отключено).
  • pingOneAuthType - Устанавливает тип авторизации через портал PingOne. Доступные значения: openid. (по умолчанию отключено).
  • disableMiddleNameValidation - позволяет отключить проверку заполнения отчества при создании нового пользователя и в личном кабинете (по умолчанию false).
  • browserTabTitle - заголовок вкладки браузера (по умолчанию - 'lexema' ).
  • disabledPersonalDataFields - массив, который содержит список атрибутов пользователя, которые необходимо запретить для редактирования в личном кабинете (По умолчанию - [] ). Доступные атрибуты: LastName - фамилия, FirstName - имя, MiddleName - отчество, PhoneNumber - номер телефона.
  • googleMaps - настройки контрола GoogleMaps (по умолчанию undefined).
    • key - ключ для работы с Google Maps API, способ получения описан в статье.
    • version - версия Google Maps, рекомендуется ставить квартальное обновление "quarterly".
    • language - язык интерфейса. Для русского языка необходимо указать "ru". Поддерживаемые языки.
    • region - регион использования. Для России необходимо указать "RU".
  • allowRegistration - задает отображение кнопки регистрации на странице входа (используется для внешней регистрации пользователей).
  • registration - настройки для внешней регистрации.
    • url - хост регистрационного сайта.
    • urlPath - дополнение к url с путем к форме заявки на регистрацию (по умолчанию пустая строка).
    • login - логин пользователя с доступом к форме заявки на регистрационном сайте.
    • password - пароль пользователя с доступом к форме заявки на регистрационном сайте.

lib#

Настройки разработки прикладных библиотек

  • aliases - словарь дополнительных псевдонимов. По умолчанию перед тестированием демо приложения необходимо выполнить предварительную сборку библиотеки. Чтобы избежать этого, можно прописать псевдоним, который позволит использовать исходные файлы. Пропишите в качестве ключа имя библиотеки, в качестве значения укажите путь к папке, где находятся исходные файлы относительно конфигурационного файла.
  • copying - настройки copy-webpack-plugin для публикации дополнительных файлов.
  • externals - список внешних зависимостей, которые будут исключены из бэндла библиотеки (по умолчанию - [])
  • name - имя библиотеки (в качестве него выступает название пакета; использование имён, отличных от названий пакета в данный момент не поддерживатеся).
  • source - путь к каталогу с исходниками библиотеки относительно корня проекта (по умолчанию - 'source').
  • manifests - используемые файлы манифеста из различных библиотек (по умолчанию ['ecosoft-lexema8']).

moxie#

Настройки сервера разработки.

  • port - порт для запуска (по умолчанию - 3333).

jsreportEditor#

  • port - порт для запуска (по умолчанию - 3069).
  • protocol - протокол (по умолчанию - http).

Конфигурирование веб-сервисов приложения#

Раздел описывает конфигурирование веб-сервисов приложения

config#

Настройки сервиса конфигурации.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию 3081).
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8-configuration-service').
  • noProxify - настройка проксирования сервиса (по умолчанию true).
  • useCredentialVault - флаг использования хранилища учетных записей Windows (по умолчанию false).
  • keys - используемые ключи хранилища учетных записей Windows (по умолчанию []).

logic#

Настройки сервиса логики.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию 3061).
  • route - используемый маршрут (по умолчанию '/api/v2.0/gate').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/gate').
  • sessionLifeTime - время жизни сессии в минутах (по умолчанию 10).
  • refreshTokenLifeTime - срок действия токена обновления в днях (по умолчанию 15).
  • userTokenLifeTime - устанавливает время действия токена восстановления пароля или кода входа при двухфакторной аутентификации в часах (по умолчанию 1). Можно задавать дробные числа, чтобы указать минуты и/или секунды.
  • failedPasswordAttemptsInterval - время в секундах, через которое пользователь может повторить вход в приложение при неудачной попытке ввода пароля (по умолчанию 0 - без ограничений по времени).
  • attemptsLimitForConfirmCode - количество попыток ввода токена восстановления пароля или кода входа при двухфакторной аутентификации (по умолчанию 0). Если значение равно 0, то количество попыток не ограничено.
  • timeLimitForResendingConfirmCode - лимит времени (в секундах) для возможности повторной отправки токена восстановления пароля или кода входа при двухфакторной аутентификации (по умолчанию 0 - без ограничений по времени). Настройка влияет на доступность кнопки отправки кода. На сервере проверка не осуществляется.
  • userTokenProvider - имя провайдера восстановления пароля (по умолчанию 'Email'). Доступные значения: Email, Phone.
  • secret - уникальный секретный ключ, на основе которого шифруется сессия.
  • validation - настройки валидации пароля и логина пользователя.
  • passwordRegularExpression - регулярное выражение для проверки пароля (по умолчанию /^(?=.[0-9])(?=.[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,}$/).
  • invalidPasswordMessage - сообщение, отображаемое пользователю при вводе невалидного пароля (по умолчанию 'Пароль должен содержать строчные и прописные буквы, а также цифры. Минимальная длина 8 символов').
  • userNameRegularExpression - регулярное выражение для проверки логина (по умолчанию /^(?=.{8,20}$)[a-zA-Z0-9]+(?:[._][a-zA-Z0-9]+)*$/).
  • invalidUserNameMessage - сообщение, отображаемое пользователю при вводе невалидного логина (по умолчанию 'Логин должен содержать только латинские буквы или цифры. Минимальная длина 8 символов').
  • cookieName - задает имя cookie для хранения идентификатора сессии (по умолчанию 'ara-session').
  • passwordExpiration - задает срок действия пароля пользователя в днях, значение 0 отключает проверку (по умолчанию 0).
  • externalRegistrationHost - указывается адрес основного сайта, если текущий сайт используется для регистрации пользователей.
  • autoLogin - настройки для автоматической авторизации клиента.
  • userName - логин пользователя, под которым произойдет вход в приложение.

LDAP#

Yастройки доменной авторизации

  • url - адрес контроллера домена. Пример: ldap(s)://domain:port.
  • bindDN - логин администратора домена. В случае пустой строки будет произведена попытка анонимного подключения.
  • bindCredentials - пароль администратора домена.
  • searchBase - описание базового имени, откуда начинается поиск пользователей. Пример: ou=users,dc=example,dc=org.
  • searchFilter - описание фильтра LDAP для поиска пользователей.
  • searchAttributes - список атрибутов, возвращаемых контроллером домена при удачном поиске.
  • updateUserAttributes - включает/выключает автоматическое обновление атрибутов пользователя (которые получены из контроллера домена) в системной таблице (по умолчанию true).
  • ldapSchemeDictionary - словарь сопоставления атрибутов пользователя лексемы с полями, которые возвращаются контроллером домена после поиска пользователя. Используются для обновления данных в таблице пользователей при получении списка пользователей из контроллера домена. Доступные атрибуты для сопоставления: firstName, lastName, middleName, email, phoneNumber. Пример: ldapSchemeDictionary: { email: 'mail', phoneNumber: 'mobile' }.

ADFS#

Настройки авторизации через портал ADFS:

  • openid - раздел, содержащий настройки для авторизации по схеме OpenID:
  • configurationURL - URL с OpenID конфигурацией федерации (чаще всего выглядит так https://fs.lex.lan/adfs/.well-known/openid-configuration).
  • clientID - уникальный идентификатор клиентского приложения, зарегистрированного в федерации.
  • callbackURL - URL возврата приложения после авторизации на портале. Для приложения на 8.4 должно выглядеть так: http(s)://[адрес сайта]/api/v2.0/gate/adfs/openid/callback (вводится при регистрации приложения в федерации).
  • strictSSL - устанавливает, необходимо ли валидировать SSL-сертификат при запросах к адресам федерации (по умолчанию true).
  • userNameField - поле, по которому будет проводится аутентификация пользователя. Зависит от схемы, используемой в доменах федерации (по умолчанию upn).
  • ssoAuthDC - адрес контроллера домена. Пример: ldap(s)://domain:port.
  • enableChangePasswordOnFirstLogin - включение необходимости смены пароля при первом входе пользователя после регистрации.
  • twoFactorProvider - провайдер двухфакторной аутентификации. Доступные значения: none, email, phone. В случае установки значения none считается выключенной. (по умолчанию 'none').
  • oauth2 - настройки oauth2-сервера.
  • multipleSessions - включает/выключает поддержку множественных сессий для пользователя (по умолчанию true).
  • pingOne - раздел, содержащий настройки авторизации через портал PingOne.
  • openid - раздел, содержащий настройки для авторизации по схеме openid.
  • clientId - уникальный идентификатор клиентского приложения.
  • clientSecret - client_secret клиентского приложения.
  • scope - список передаваемых scope (пример: 'openid profile email').
  • callbackUrl - url возврата приложения после авторизации на портале. Для приложения на 8.4 должно выглядеть так: http(s)://[адрес сайта]/api/v2.0/gate/pingone/openid/callback.
  • authorizationUrl - адрес, на который перенаправляется пользователь для ввода логина и пароля.
  • jwksEndPoint - адрес JWKS endpoint.
  • tokenEndpoint - адрес token endpoint.
  • prompt - указывает, будет ли сервер авторизации запрашивать у конечного пользователя повторную аутентификацию (по умолчанию none). Доступные значения: none, login.

gate#

Настройки сервиса входа (авторизации)

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию 3061).
  • route - используемый маршрут (по умолчанию '/api/v2.0/gate').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/gate').
  • sessionLifeTime - время жизни сессии в минутах (по умолчанию 10).
  • refreshTokenLifeTime - cрок действия токена обновления в днях (по умолчанию 15).
  • userTokenLifeTime - устанавливает время действия токена восстановления пароля или кода входа при двухфакторной аутентификации в часах (по умолчанию 1). Можно задавать дробные числа, чтобы указать минуты и/или секунды.
  • failedPasswordAttemptsInterval - Время в секундах, через которое пользователь может повторить вход в приложение при неудачной попытке ввода пароля (по умолчанию 0 - без ограничений по времени).
  • attemptsLimitForConfirmCode - количество попыток ввода токена восстановления пароля или кода входа при двухфакторной аутентификации (по умолчанию 0). Если значение равно 0, то количество попыток не ограничено.
  • timeLimitForResendingConfirmCode - лимит времени (в секундах) для возможности повторной отправки токена восстановления пароля или кода входа при двухфакторной аутентификации (по умолчанию 0 - без ограничений по времени). Настройка влияет на доступность кнопки отправки кода. На сервере проверка не осуществляется.
  • userTokenProvider - имя провайдера восстановления пароля (по умолчанию 'Email'). Доступные значения: Email, Phone.
  • secret - уникальный секретный ключ, на основе которого шифруется сессия.
  • validation - настройки валидации пароля и логина пользователя.
  • passwordRegularExpression - регулярное выражения для проверки пароля (по умолчанию /^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,}$/).
  • invalidPasswordMessage - сообщение отображаемое пользователю при вводе невалидного пароля (по умолчанию 'Пароль должен содержать строчные и прописные буквы, а также цифры. Минимальная длина 8 символов').
  • userNameRegularExpression - регулярное выражения для проверки логина (по умолчанию /^(?=.{8,20}$)[a-zA-Z0-9]+(?:[._][a-zA-Z0-9]+)*$/).
  • invalidUserNameMessage - сообщение отображаемое пользователю при вводе невалидного логина (по умолчанию 'Логин должен содержать только латинские буквы или цифры. Минимальная длина 8 символов').
  • cookieName - задает имя cookie для хранения идентификатора сессии (по умолчанию 'ara-session').
  • passwordExpiration - задает срок действия пароля пользователя в днях, значение 0 отключает проверку (по умолчанию значение 0).
  • externalRegistrationHost - указывается адрес основного сайта, елси текущий сайт используется для регистрации пользователей.
  • autoLogin - настройки для автоматической авторизации клиента.
  • userName - login пользователя, под которым произойдет вход в приложение.

radio#

Настройки сервиса взаимодействия реального времени.

  • host - используемый веб-протокол (по умолчанию 'localhost').
  • ws - поддержка проксирования по веб-сокетам (по умолчанию true).
  • port - порт для запуска (по умолчанию 3062).
  • route - используемый маршрут (по умолчанию '/api/v2.0/radio').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/radio').
  • channels - словарь используемых каналов. (по умолчанию 'ecosoft-lexema8': ['legacy']). Ключом является идентификатор канала, значением - массив имен типов сообщений.
  • persistance - параметры хранения отложенных сообщений.
  • provider - класс, обеспечивающий хранение отложенных сообщений.
  • options - опции.
    • db - имя профиля подключения к базе данных (по умолчанию 'radio').
    • ttl - время хранения недоставленных сообщений в минутах. (по умолчанию используется значение applications.gate.sessionLifeTime).

data#

Настройки сервиса данных.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию - 'localhost').
  • db - имя профиля подключения к базе данных (по умолчанию - 'main').
  • port - порт для запуска (по умолчанию 3063).
  • route - используемый маршрут (по умолчанию '/api/v2.0/data').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/data').
  • dataSizeLimit - максимальный размер передаваемых данных в теле запроса.

lock#

Настройки сервиса блокировок.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию - 3064).
  • route - используемый маршрут (по умолчанию '/api/v2.0/lock').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/lock').

file#

Настройки сервиса файлов.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - веб-протокол (по умолчанию по умолчанию 'localhost').
  • port - запуска (по умолчанию 3065).
  • route - используемый маршрут (по умолчанию '/api/v2.0/content').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/file').
  • maxSize - максимальный размер загружаемого файла на сервер (по умолчанию - '30mb').
  • timeout - таймаут ожидания ответа от сервиса. В режиме продакшена может потребоваться дополнительно настроить таймаут для веб-сервера (nginx).
  • storage - Настройка для выбора хранилища файлов. Доступные значения: db - хранение файлов в базе, ftp - хранение файлов на ftp-сервере, smb - хранение файлов на smb-сервере. По умолчанию db.
  • preview – настройки сервиса превью (предпросмотр файлов).
  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию - 3084).
  • script - путь к модулю, запускающему сервис (рекомендуемое 'ecosoft-lexema8-preview-creator-service').
  • fileSizeLimit - максимальный размер конвертируемого файла (по умолчанию '30mb').
  • maxRetry - кол-во попыток сконвертировать файл, после которых возникнет ошибка (по умолчанию - 3).
  • resultTTL - время хранения готового результата (файла или ошибки) в миллисекундах, в случае отсутствия соединения для ответа (socket) (по умолчанию - 10 * 60 * 1000).
  • Post – настройки сервиса электронной почты и смс сообщений.
  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port – порт для запуска (по умолчанию - 3066).
  • route - используемый маршрут (по умолчанию '/api/v2.0/post').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/post').
  • attachmentRequestTimeout - максимальное время ожидания загрузки файла в миллисекундах (по умолчанию 1000).
  • defaultEmailId - идентификатор почтового ящика, который используется по умолчанию.
  • emails - словарь с описанием используемых почтовых ящиков. Ключом является уникальный идентификатор почтового ящика, а значением - объект со свойствами:
    • host - имя хоста smtp-сервера.
    • port - порт smtp-сервера.
    • secure - включить/выключить доставку по электронной почте с использованием TLS/STARTTLS (по умолчанию false). Доступные значение true, false. (Для 'smtp.yandex.ru' значение должно быть true)
    • rejectUnauthorized - включает/выключает проверку сертификата. По умолчанию true.
    • user - логин.
    • pass - пароль.
    • userName – имя, отображаемое при отправке почты.
  • sms - настройки сервиса для отправки смс (можно не описывать, если код для восстановления пароля не отправляется через смс).
    • provider - имя провайдера, реализующий отправку смс сообщений (по умолчанию undefined). Доступные значения: proctor, mts, либо путь к собственному классу.
    • login - логин.
    • password - пароль.
    • token - токен доступа к api (используется у провайдера "мтс коммуникатор").
    • sender - имя отправителя.
  • pushNotification - настройки для интеграции с сервисом Firebase для отправки push-уведомлений. Настройки необходимо получить в личном кабинете Firebase. Перейдите в настройки вашего приложения (Project settings). В разделе Service accounts нажмите кнопку Generate new private key. Содержимое файла необходимо добавить в этот раздел.

preview#

Настройки сервиса превью (предпросмотр файлов).

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию - 3074).
  • script - путь к модулю, запускающему сервис (рекомендуемое 'ecosoft-lexema8-preview-creator-service').
  • fileSizeLimit - максимальный размер конвертируемого файла (по умолчанию '30mb').
  • maxRetry - кол-во попыток сконвертировать файл, после которых возникнет ошибка (по умолчанию - 3).
  • resultTTL - время хранения готового результата (файла или ошибки) в миллисекундах, в случае отсутствия соединения для ответа (socket) (по умолчанию - 10 * 60 * 1000).

post#

Настройки сервиса электронной почты и смс сообщений.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию - 3066).
  • route - используемый маршрут (по умолчанию '/api/v2.0/post').
  • script - путь к модулю, запускающему сервис (по умолчанию 'ecosoft-lexema8/post').
  • attachmentRequestTimeout - максимальное время ожидания загрузки файла в миллисекундах (по умолчанию 1000).
  • defaultEmailId - идентификатор почтового ящика, который используется по умолчанию.
  • emails - словарь с описанием используемых почтовых ящиков. Ключом является уникальный идентификатор почтового ящика, а значением - объект со свойствами:
  • host - имя хоста smtp-сервера.
  • port - порт smtp-сервера.
  • secure - включить/выключить доставку по электронной почте с использованием TLS/STARTTLS (по умолчанию false). Доступные значение true, false. (Для 'smtp.yandex.ru' значение должно быть true)
  • rejectUnauthorized - включает/выключает проверку сертификата. По умолчанию true.
  • user - логин.
  • pass - пароль.
  • userName - имя отображаемое при отправке почты.
  • sms - настройки сервиса для отправки смс (можно не описывать, если код для восстановления пароля не отправляется через смс).
  • provider - имя провайдера, реализующий отправку смс сообщений (по умолчанию undefined). Доступные значения:
    • prostor
    • mts
    • либо путь к своему собственному классу
  • login - логин.
  • password - пароль.
  • token - токен доступа к api (используется у провайдера "мтс коммуникатор").
  • sender - имя отправителя.
  • pushNotification - настройки для интеграции с сервисом firebase для отправки push-уведомлений. Насройки необходимо получить в личном кабинете firebase. Перейдите в настройки вашего приложения (Project settings). В разделе Service accounts нажмите кнопку Generate new private key. Содержимое файла необходимо добавить в этот раздел.

dxreport-iis-application#

Настройки web-приложения для работы с devexpress-отчетами.

protocol - используемый веб-протокол (по умолчанию 'http'). host - имя хоста (по умолчанию 'localhost'). port - порт для запуска (по умолчанию - 3067). route - используемый маршрут (по умолчанию '/api/v2.0/report'). xtraReport - использование DevExpress отчетов (по умолчанию true).

jsreport#

Настройки сервиса отчетов jsreport.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (рекомендуемое - 3080).
  • route - используемый маршрут (по умолчанию '/api/v2.0/jsreport').
  • script - путь к модулю, запускающему сервис (рекомендуемое 'ecosoft-lexema8-jsreport-service').
  • editor - настройки редактора отчета.
  • port - порт для запуска (по умолчанию 3069).
  • protocol - протокол (по умолчанию http).
  • core - настройки библиотеки jsreport-core для сервиса отчетов. Редактор отчетов использует только настройки раздела extensions.
  • store - настройки для хранения отчетов.
  • provider - задает один из возможных вариантов для хранения отчетов. Доступно только значение 'fs' (хранение в файловой системе).
  • templatingEngines - настройки компоненты, выполняющей задачи рендеринга.
  • strategy - стратегия для рендеринга отчетов. Доступные значения: 'dedicated-process', 'http-server', 'in-process' (по умолчанию 'in-process').
  • extensions - словарь используемых модулей для сервиса отчетов и редактора (редактор некоторые модули может подключать со своими настройками).
  • fs-store - хранение отчетов в файловой системе.
  • syncModifications - сброс кэша при изменении отчета (по умолчанию false). В редакторе отчетов эта настройка всегда передается со значением false.
  • chrome-pdf - создание pdf-отчетов с использованием headless chrome.
  • launchOptions - настройки запуска.
  • args - массив аргументов (по умолчанию ['--no-sandbox']).
  • handlebars - движок для описания макета шаблона (по умолчанию {}).
  • text - создание текстовых отчетов (по умолчанию {}).
  • xlsx - создание excel-отчетов (по умолчанию {}).
  • html-to-xlsx - создание excel-отчетов из html (по умолчанию {}).
  • templates - хранение и поиск шаблонов (по умолчанию {}).
  • child-templates - использование вложенных шаблонов (по умолчанию {}).
  • assets - встраивание статических ресурсов, таких как стили, шрифты или HTML (по умолчанию {}).
  • data - возможность привязки данных к шаблону (по умолчанию {}).

scheduler#

Настройки сервиса планировщика задач - protocol - используемый веб-протокол (по умолчанию 'http'). - host - имя хоста (по умолчанию 'localhost'). - port - порт для запуска (рекомендуемое - 3085). - clientInfo – Объект, содержащий данные для получения токенов для работы с приложением. - clientId - id стороннего приложения. Указанный id не рекомендуется использовать для других сторонних приложений. - clientSecret - секретный ключ стороннего приложения. - defaultUser - ключ пользователя из объекта users для работы с приложением. - users – объект, содержащий данные о пользователях для работы с приложением. Пример:

default: { _// default - ключ пользователя_
  userName: %Имя пользователя%,
  password: %Пароль пользователя%
- functions - массив названий подключаемых к сервису пакетов функций. - attemptsLimit - количество попыток инициализации сервиса (по умолчанию 6). - beginTimeout - таймаут между попытками инициализации сервиса (по умолчанию 1000).

dss#

Настройки сервиса работы с электронными подписями

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию 'localhost').
  • port - порт для запуска (по умолчанию - 3076).
  • route - используемый маршрут (по умолчанию '/api/v2.0/dss').
  • script - путь к модулю, запускающему сервис (рекомендуемое 'ecosoft-lexema8-dss-service').
  • kontur - настройки для интеграции с СКБ Контур.
  • key - ключ для доступа к тестовой площадке контура.
  • cryptoApiUrl - адрес, по которому доступно Crypto API контура. При работе с тестовой площадкой по http указывается 'http://cloudtest.kontur-ca.ru/v3'. При работе с тестовой или боевой площадками по https указывается адрес, по которому доступен stunnel-msspi.
  • certificateReleasingUrl - адрес, по которому доступно Certificate Releasing API контура. При работе с тестовой площадкой по http указывается 'http://test.kontur-ca.ru/CC'. При работе с боевой площадкой по https указывается адрес, по которому доступен stunnel-msspi.
  • cryptoApiHost - добавляет http-заголовок host для запросов, которые обращаются к Crypto API. Свойство задается, если сервис работает в связке с stunnel-msspi. При работе с тестовой площадкой указывается 'cloudtest.kontur-ca.ru:443', при работе с боевой площадкой 'cloud.kontur-ca.ru:443'.
  • certificateReleasingHost - добавляет http-заголовок host для запросов, которые обращаются к Сertificate Releasing API. Свойство задается, если сервис работает в связке с stunnel-msspi. При работе с боевой площадкой указывается 'reg.kontur-ca.ru:443'.
  • callbackUrl - полный адрес к маршруту, на который придет POST-запрос с результатом операции от СКБ Контур. Шаблон адреса: [protocol]://[domain]/api/v2.0/kontur/dss/response.
  • taskId - идентификатор задачи, который выполнится сервисом shceduler после обработки POST-запроса от СКБ Контур маршрутом callbackUrl (по умолчанию null).
  • disableConfirmOperation - отключает подтверждение операции по смс для сертификатов НЭП по умолчанию false. Если настройка включена, то работа с сертификатами КЭП становится невозможной.
  • lexema - Настройки для подключения ОЭП от Лексемы. Для подключения достаточно указать пустой объект {}, если не используются дополнительные настройки.
  • certificateValidityPeriod - Задает срок действия сертификата в днях (по умолчанию 1825).
  • loadUserAttributesQuery - путь к запросу, который возвращает атрибуты, используемые для заполнения поля Subject (информация о владельце) сертификата.
  • confirmCodeLifeTime - время действия кода для подтверждения операции в секундах (по умолчанию 60).
  • attemptsLimitForConfirmCode - лимит попыток ввода кода для подтверждения операции (по умолчанию 3). Если указано 0, то количество попыток неограничено.
  • disableConfirmOperation - отключает подтверждение операции по коду (по умолчанию false).
  • containerStorage - тип хранилища данных для контейнера закрытого ключа (по умолчанию REGISTRY). Настройка используется для ОС Windows. Доступные значения: REGISTRY, HDIMAGE.
  • rootCertificate - Задает настройки корневых сертификов, которые используются для выпуска пользовательских сертификатов. В режиме разработки сертификаты рекомендуется устанавливать в корневые доверенные сертификаты пользователя, а в режиме производства в корневые доверенные сертификаты компьютера. Если корневые сертификаты не используются, то это свойство не нужно задавать.
    • thumbprint - отпечаток корневого сертификата, который будет использоваться по умолчанию. Имеет меньший приоритет, чем сертификат, который привязан к организации. Можно не задавать.
    • store - хранилище для корневых сертификатов (рекомендуемое значение в режиме разработки 'uRoot' - поиск в корневых доверенных сертификах пользователя, рекомендуемое значение в режиме производства 'mRoot' - поиск в корневых доверенных сертификах компьютера).

collector#

Настройки сервиса сбора информации о системе.

  • protocol - используемый веб-протокол (по умолчанию 'http').
  • host - имя хоста (по умолчанию - 'localhost').
  • port - порт для запуска (по умолчанию 3077).
  • route - используемый маршрут (по умолчанию '/api/v2.0/collector').
  • script - путь к модулю, запускающему сервис (рекомендуемое 'ecosoft-lexema8-collector-service').
  • model - модель, используемая для записи информации (по умолчанию 'ecosoft-lexema8/lib/models/collector.model.json').
  • enable - включить/выключить сбор информации о системе(по умолчанию false).
  • authentication - настройки сбора информации о сессиях пользователей.
  • enable - включить/выключить сбор информации об сессиях(по умолчанию false).
  • reports - настройки сбора информации об отчетах.
  • enable - включить/выключить сбор информации об отчетах(по умолчанию false).
  • exceptions - массив отчетов, игнорирующих параметр enable раздела reports (по умолчанию []).
  • forms - настройки сбора информации об открытии/закрытии форм приложения.
  • enable - включить/выключить сбор информации об открытии/закрытии форм(по умолчанию false).
  • exceptions - массив ключей форм из units.json, игнорирующих параметр enable раздела forms (по умолчанию []).
  • data - настройки сбора информации о работе с данными.
  • enable - включить/выключить сбор информации о работе с данными(по умолчанию false).
  • exceptions - массив идентификаторов моделей и запросов (путей к файлам относительно "контекста"), игнорирующих параметр enable раздела data (по умолчанию []).

dev#

Настройки сервиса, предоставляющего интерфейс разработчика.

  • protocol - используемый веб-протокол (по умолчанию http).
  • host - имя хоста (по умолчанию localhost).
  • port - порт для запуска (по умолчанию 3088).
  • route - используемый маршрут (по умолчанию /dev).
  • script - путь к модулю, запускающему сервис (по умолчанию ecosoft-lexema8-dev-service).

excel#

Настройки сервиса экспотра данных в excel (используется для серверного грида).

  • protocol - используемый веб-протокол (по умолчанию http).
  • host - имя хоста (по умолчанию localhost).
  • port - порт для запуска (по умолчанию 3089).
  • route - используемый маршрут (по умолчанию /api/v2.0/excel).