Сервисы

Перенос конфигурации

Сервис предназначен для выгрузки всей или части конфигурации с одного сервера До́кви и ее загрузки на другой.

Для выгрузки конфигурации нужно выбрать один или несколько типов документов (журналов) перенеся из из списка доступных типов документов и журналов в список выбранных для выгрузки при помощи соответствующих кнопок. После чего следует нажать на кнопку «Выгрузить» и сохранить полученный файл.

Для загрузки конфигурации необходимо нажать на кнопку «Загрузить», выбрать файл с ранее выгруженной конфигурацией и еще раз нажать на кнопку «Загрузить».

При загрузке все существующие типы документов и журналы заменяются теми, что присутствуют в загружаемой конфигурации. Значения полей документов, сами документов, значения настроечных полей сохраняются. В отличие от остальных, в типе документа НАСТРОЙКА сохраняются добавленные настроечные поля.

Планировщик задач

Сервис позволяет запускать определенные задачи в заданное время.

Для добавления существующей задачи необходимо нажать на строку с ней в таблице запланированных задач, а для создания новой — нажать на кнопку «Новая задача».

В окне задачи необходимо определить:

  • Время запуска. Задача может запускаться ежеминутно, ежечасно в заданную минуту, ежедневно в определенные час и минуту, еженедельно в заданный день недели (с понедельника по воскресенье) и определенные час и минуту, ежемесячно в заданные число, час и минуту и ежегодно в заданные месяц, день месяца, час и минуту. Время запуска может быть только одного. Для добавления еще одного времени запуска необходимо продублировать задачу.
  • Действие задачи. Доступны следующие действия:
    • Создание. Это действие позволяет создать документ заданного типа. Необходимо выбрать этот тип и настроечное поле с автором создаваемого документа. Если в поле будет несколько сотрудников, будет создано несколько документов, равное количеству авторов. Если в поле будет подразделение, будет создано по одному документу для каждого сотрудника в выбранном подразделении (а также во всех дочерних).
    • Запись. Действие предназначено для записи определенного значения в заданное настроечное поле.
    • Перемещение. Действие позволяет переместить один или несколько документов, идентификаторы которых находятся в заданном поле.
    • Резервное копирование. Действие формирует zip-файл с дампом базы данных и / или файлового хранилища. Файлы сохраняются, по умолчанию, в каталог storage/backup (путь можно переопределить, см. ключ Backup конфигурационного файла)
    • Оптимизация данных. Действие выполняет оптимизацию базы данных, проверяет конфигурацию, очищает данные и осуществляет прочем проверки. Рекомендуется запускать задачу ежедневно в часы наименьшей нагрузки, т. к. ее выполнение может занять продолжительное время.

OnlyOffice

Данный сервис предназначен для интеграции До́кви и офисного редактора OnlyOffice. Перед настройкой сервиса вначале необходимо установить и настроить OnlyOffice.

Сервис имеет следующие настройки:

  • Состояние: включен или выключен. Во включенном состоянии у поля типа «Файл» в режиме редактирования для файлов офисных форматов становится доступной кнопка открытия файла в редакторе OnlyOffice.
  • URL-адрес сервера OnlyOffice. Этот адрес должен быть доступным из браузеров пользователей и не может быть локальным (127.0.0.1).
  • Токен OnlyOffice. По умолчанию, используется secret. При необходимости Вы можете изменить его, обратившись к документации OnlyOffice.

Active Directory

Для аутентификации пользователей в системе через Active Directory необходимо, чтобы каждый пользователь из активного каталога имел учетную запись в До́кви с именем, совпадающим с UPN каталога. И, разумеется, эта учетная запись должна иметь соответствующую связь с документов «Структуры», который, в свою очередь, должен быть связан с «Сотрудником» и «Должностью». Все эти документы можно создавать вручную или доверить эти операции описываемому сервису, который автоматически, на основе данных из Active Directory, создает перечисленные документы и актуализирует их в будущем при изменении данных в каталоге. На саму аутентификацию в До́кви через Active Directory сервис никак не влияет.

Настройка сервиса выполняется после того, как будет включена аутентификация через Active Directory. Сервис имеет следующие настройки:

  • Состояние. Включен или отключен сервис.
  • Контроллер домена. Доменное имя или IP-адрес сервера с ролью контроллера домена Active Directory. По умолчанию, используется порт 389. Название домена сервис получит из настроек аутентификации.
  • Имя пользователя. UPN пользователя, входящего в группу Managed Service Account.
  • Пароль пользователя, входящего в группу Managed Service Account.
  • Должность. В схеме каталога Active Directory нет поля для ввода должности. Здесь можно ввести название атрибута, который будет использован для получения должности из Active Directory. Например, если вы вводите должности в поле описание пользователя, введите в этот параметр description.
  • Исключаемые OU. Перечисленные в этом параметре через запятую организационные единицы (OU) не будут загружаться из Active Directory. Настройка применима только к OU верхнего уровня и распространяется на все дочерние единицы.
  • Период синхронизации. Запуск следующей синхронизации будет осуществляться через указанное в этом параметре количество секунд. Минимальное значение: 30. Измененное значение вступит в силу после запуска запланированной по прежнему значению операции синхронизации.
  • Автор. Выберите сотрудника, который будет являться автором всех создаваемых документов в системе при загрузке новых данных из Active Directory.
  • Перемещение документа «Структура» / «Сотрудник» / «Должность». Можно выбрать точку маршрута, на которую будет перемещен документ соответствующего типа после его изменения данным сервисом.
  • Время последнего изменения. Время последней синхронизации с Active Directory, при которой в систему были загружены новые (измененные) данные, в формате ГГГГММДДЧЧММСС по UTC. При необходимости в повторной синхронизации можно изменить это время; если такой необходимости нет, время изменять не следует.

REST-API

Данный сервис позволяет публиковать REST-API сервисы, к которым можно обращаться извне по адресу http(s)://доменное-имя/api/название-сервиса. Каждый вызов такого API создает документ заданного типа, в котором можно определить любую логику, доступную в системе.
ВНИМАНИЕ! Мы не рекомендуем использовать REST-API сервисы без настроенного протокола HTTPS на сервере!

Каждый сервис имеет следующие настройки:

  • Название сервиса. Это название используется только в списке сервисов для удобства администратора.
  • URL-адрес сервера. Если ввести, например, test, то внешние системы должны будут обращаться к сервису по адресу http(s)://ваше-доменное-имя/api/test.
  • HTTP-метод сервиса: GET, POST, PUT, PATCH или DELETE. Комбинация адреса сервиса и HTTP-метода должна быть уникальной. Если, к примеру, вы проектируете сервис получения количества входящих документов по заданному контрагенту, используйте метод GET.
  • Документ обработки запроса. Когда поступит запрос извне, сервис создаст документ заданного типа. Поскольку в До́кви каждый документ должен иметь автора, необходимо выбрать настроечного поле, которое будет содержать документ «Структуры» сотрудника, который будет автором созданного документа.
  • Параметры запроса. Возвращаясь к примеру получения количества входящих, заметим, что для его работу необходимо знать контрагента, по которому нужно вернуть количество документов. Поскольку мы выбрали метод GET, для обращения к нашему сервису спроектируем следующий запрос:
    http(s)://ваше-доменное-имя/api/test?name=Контрагент, где name — это параметр, который необходимо добавить в данной таблице, указав название name, сделав его обязательным (если вызывающая сторона не передаст этот параметр, она получит ошибку, и документ не будет создан), и выбрав поле документа обработки запроса, в которое будет записано значение параметра name, то есть нужный контрагент.
  • Сообщение. Этот параметр доступен для методов POST, PUT, PATCH и позволяет передать сервису тело сообщения в формате JSON. Этот JSON будет записан в выбранное поле для дальнейшей обработки в созданном документе. JSON может быть массивом — в этом случае для каждого элемента массива будет создан отдельный документ обработки запроса. Если обработку на параллельную, каждый документ будет работать в отдельном потоке, что позволит повысить скорость обработки запроса в случаях, когда для каждого документа будет много вычислений.
  • Аутентификация. Чтобы ограничить доступ к сервису, можно включить аутентификацию. Для этого необходимо выбрать параметр запроса (см. настройку «Параметры запроса» выше), который будет содержать авторизационный ключ. Поиск ключа будет осуществляться во всех документах выбранного типа документа в указанном поле. Если ни в одном из документов полученный из параметра ключ не будет найден, запрос будет отклонен.
    Например, мы можем предоставить наш гипотетический сервис с количеством документов по контрагентам разным отделам нашей организации. Чтобы можно было определить чей запрос получен, можно создать дополнительный тип документа, например, «Ключи для сервиса» из двух полей: «Ключ» и «Отдел». Добавив параметр key (и получив полный адрес сервиса: http(s)://ваше-доменное-имя/api/test?name=Контрагент&key=xxx) и включив аутентификацию по типу документа «Ключи для сервиса» и полю «Ключ», мы получим сервис, к которому можно обратиться только при наличии ключа (а в документе обработки запроса, используя действия маршрута, можно будет получить отдел по ключу, например, при помощи действия «Выборка»).
  • Ответ. Сервис может вернуть ответ, загрузив его из выбранного поля документа обработки. В нашем примере, документ обработки должен будет записать в этом поле количество документов контрагента (или соответствующий JSON). При параллельной обработке документов запроса (см. настройку «Сообщение» выше) будет сформирован JSON-массив, состоящий из всех значений выбранного поля всех документов запроса.
  • Удалить созданный документ. По завершении обработка документа запроса и загрузки ответа (если он был настроен) сервис может удалить документ обработки, чтобы не нагружать базу данных. Вы можете не использовать эту настройку, сохраняя документы обработки на некоторое время для исследования поступавших запросов.

IMAP-клиент

Этот сервис позволяет загружать письма из заданных почтовых ящиков по протоколу IMAP и на их основе создавать документы определенного типа с записью в их поля данных из писем.

Для добавления почтового ящика необходимо указать следующие настройки:

  • Название. Используется только для отображения в списке проверяемых почтовых ящиков. Название можно передавать в документ, создаваемые в До́кви на поступившее письмо.
  • Адрес сервера (:порт). Например, imap.gmail.com:993
  • Имя пользователя.
  • Пароль пользователя. При использовании общедоступных почтовых сервисов обратите внимание, что вам, как правило, потребуются пароли приложений. Вот ссылки на некоторые инструкции: Google, Yandex, Mail.ru.
  • Документ, который будет создан на каждое письмо, поступившее в указанный почтовый ящик:
  • Тип документа.
  • Автор из поля. Если поле с автором будет содержать несколько сотрудников, для каждого автора будет создан отдельный документ.
  • Название сервиса. Это название сервиса, который настраивается. Название может быть полезным, если возникнет потребность определения из какого ящика поступило сообщение. Здесь и далее необходимо выбрать поле, в которое будет записано соответствующее значение (при его наличии).
  • Почтовый адрес отправителя.
  • Имя отправителя - 'это имя'<mail@gmail.com> .
  • Тема письма.
  • Дата письма.
  • Содержимое письма.
  • Почтовые вложения — доступны только поля типа «Файл».
  • Временные параметры включают: задержку между операциями проверки почтовых сообщений в ящике (в минутах) и время, начиная с которого будет выполняться поиск необработанных сообщений