Добавление плагинов в локальную версию Р7 Document Server

Добавить плагины можно тремя способами: через папку sdkjs-plugins, через файл config.json или через менеджер плагинов.

Поместите папку с кодом плагина в папку Р7 Document Server. Путь к папке зависит от используемой операционной системы:

  • Для Linux — /var/www/Р7/documentserver/sdkjs-plugins/
  • Для Windows — %ProgramFiles%\Р7\DocumentServer\sdkjs-plugins\

Плагины будут доступны всем пользователям Р7 Document Server в локальной среде. В некоторых случаях требуется перезапуск сервиса.

  • Для отладки запустите Р7 Document Server вместе с общей папкой sdkjs-plugins:
  • docker run -itd -p 80:80 -v /absolutly_path_to_work_dir:/var/www/Р7/documentserver/sdkjs-plugins/plugin Р7/documentserver-ee:latest

В конфигурацию Р7 Document Server добавьте относительный путь к файлу config.json созданного плагина в параметр plugins.pluginsData:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "editorConfig": {
        "plugins": {
            "autostart": [
                "asc.{0616AE85-5DBE-4B6B-A0A9-455C4F1503AD}",
                "asc.{FFE1F462-1EA2-4391-990D-4CC84940B754}",
                ...
            ],
            "pluginsData": [
                "https://example.com/plugin1/config.json",
                "https://example.com/plugin2/config.json",
                ...
            ]
        },
        ...
    },
    ...
});

Где

example.com — это имя сервера, на котором установлены менеджер документов и служба хранения документов, а также размещены плагины.

https://example.com/plugin1/config.json — путь к плагину

Если в аонфигурации уже есть тестовый пример, замените следующую строку /etc/Р7/documentserver-example/local.json на путь к нужной конфигурации плагина.

См. документацию Р7 Document Server API для получения дополнительной информации о том, где найти конфигурцию и что и как там можно изменить.

  • В файле index.html всегда есть ссылка по умолчанию на файл pluginBase.js. Не забудьте добавить его в папку плагина.
  • Если плагины, помещенные в папку, и плагины, указанные в конфигурации, совпадают, то будут использованы последние.
  • Если вы хотите загрузить плагин на серверы S3 или Nginx, вам необходимо разрешить междоменные запросы с адреса вашего сервера документов. Или вы можете просто позволить всем использовать ваш плагин:
    add_header 'Access-Control-Allow-Origin' '*';  
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    

Вы можете удалить плагины тремя способами:

Вариант 1. Перейдите в папку sdkjs-plugins и удалите соответствующую папку плагина из этого каталога.

Путь к папке зависит от используемой операционной системы:

  • Для Linux — /var/www/Р7/documentserver/sdkjs-plugins/
  • Для Windows — %ProgramFiles%\Р7\DocumentServer\sdkjs-plugins\

Вариант 2. Отредактируйте конфигурацию Р7 Document Server, удалив соответствующий плагин. Плагин станет недоступен для всех пользователей портала при следующем запуске редактора:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "editorConfig": {
        "plugins": {
            "autostart": [
                "asc.{0616AE85-5DBE-4B6B-A0A9-455C4F1503AD}",
                "asc.{FFE1F462-1EA2-4391-990D-4CC84940B754}",
                ...
            ],
            "pluginsData": [
                "https://example.com/plugin1/config.json",
                "https://example.com/plugin2/config.json",
                ...
            ]
        },
        ...
    },
    ...
});                

Плагины будут удалены для всех пользователей. В некоторых случаях требуется перезапуск службы.

В таблице ниже приведены руководства по плагинам по умолчанию, чтобы вам было проще их найти:

Руководство по плагинам по умолчанию

Фото-редактор{07FD8DFA-DFE0-4089-AL24-0730933CC80A}
Настройки{8D67F3C5-7736-4BAE-A0F2-8C7127DC4BB8}
Распознавание текста{440EBF13-9B19-4BD8-8621-05200E58140B}
Главред{B631E142-E40B-4B4C-90B9-2D00222A286E}
Подсветка кода{BE5CBF95-C0AD-4842-B157-AC40FEDD9841}
Макросы{E6978D28-0441-4BD7-8346-82FAD68BCA3B}
Речь{D71C2EF0-F15B-47C7-80E9-86D671F9C595}

Обратите внимание, что после обновления приложения снова появятся плагины по умолчанию, и вам нужно будет их удалить.
Вариант 3. Чтобы удалить только что добавленный плагин, выполните следующие действия:

  1. Откройте вкладку «Плагины».
  2. Зайдите в менеджер плагинов.
  3. Нажмите кнопку «Удалить» рядом с соответствующим плагином.