📄Руководство Администратора

RUS.78883414.06.02-01 32 01

Версия 1.01 от 11.06.2025

1. Введение

Настоящая инструкция устанавливает порядок настройки и запуска мессенджера КОСКО.

2. Подготовка к запуску

2.1. Обновите и загрузите актуальные пакеты в системе:

Альт Сервер 10
Ubuntu linux

#apt-get update

#apt update

#apt-get dist-upgrade

#apt upgrade

2.2. Установите и запустите программу docker и docker-compose.

Альт Сервер 10
Ubuntu linux

Установка docker-engine: #apt-get install docker-engine

См. руководство по установке службы Docker на Ubuntu

Активация службы: #systemctl enable –now docker

Установка docker-compose: #apt-get install docker-compose-v2

2.3. Создайте на диске следующие папки: 2.3.1. Папка для хранения файлов мессенджера, в т.ч. лицензии и сертификатов. Создать папку /cosco в корне системы. 2.3.2. Папка для хранения конфигурационных файлов мессенджера, рекомендуется создать папку /opt/cosco_msg из корня системы. 2.4 Перенесите файлы полученной лицензии (license.enc) и выпущенных вами TLS-сертификатов (fullchain.pem и privkey.pem) в папку /cosco, созданную в п.2.3.1. 2.5 Перенесите полученные файлы “docker-compose.yml”, “.env”, “update.sh” (при локальной установке без сети интернет) в папку, созданную в п.2.3.2.

3. Установка и настройка сервера КОСКО-Мессенджера

3.1. Открыть командную строку и перейти в папку, где расположены конфигурационные файлы мессенджера (путь из п. 2.3.2.). 3.2. В случае установки с доступной сетью интернет: 3.2.1. Выполнить авторизацию в реестре контейнеров с помощью ввода команды #docker login registry.abs95.ruПользователь с внешним доступом: Login: abr-messenger Password: password1!

3.2.2. Выполнить загрузку контейнеров и запуск приложения командой:

Альт Сервер 10
Ubuntu linux

#docker compose up -d

#docker-compose up -d

3.3 В случае установки с недоступной сетью интернет: 3.3.1 Загрузить полученные “tar” архивы в папку из п.2.3.2.

3.3.2 Запустить скрипт в терминале #bash update.sh для загрузки контейнеров и запуска docker compose по пути из п.2.3.2. 3.3.3 При необходимости, проверить наличие загруженных контейнеров командой в терминале #docker images. Контейнеров должно быть ровно столько, сколько архивов tar. 3.3.4 При необходимости, повторить запуск docker compose:

Альт Сервер 10
Ubuntu linux

#docker compose up -d

#docker-compose up -d

4. Конфигурация КОСКО-Мессенджера в клиенте приложения

4.1. Необходимо открыть клиент мессенджера, для этого: 4.1.1. Необходимо узнать адрес сервера мессенджера (виртуальная машина, на которой выполнялись действия из п.2 и п.3.) в вашей локальной сети. Либо это ip, либо домен, если ваш администратор связал с данным адресом домен. 4.1.2. Открыть браузер на ПК, находящемся в локальной сети с сервером мессенджера, ввести адрес сервера мессенджера в поисковую строку (для примера 10.0.0.185) 4.1.3. Войти для первоначальной конфигурации и проверки работоспособности под аккаунтом администратора: Login: admin Password: 12345

4.2. Открыть панель администратора и ввести конфигурацию для интеграции с Active Directory, синхронизировать данные. 4.2.1. Открыть боковое меню путем нажатия на иконку пользователя в левом верхнем углу 4.2.2. Выбрать пункт меню «Админ панель»

4.2.3. Открыть панель администратора и ввести конфигурацию для интеграции с Active Directory: 4.2.3.1. Адрес сервера; 4.2.3.2. baseDN; 4.2.3.3. Домен; 4.2.3.4. Логин и пароль пользователя с правами на чтение Active Directory; 4.2.3.5. При необходимости, задать фильтры на группу пользователей; 4.2.3.6. Соотнести обязательный атрибут «ИМЯ», как показано на скриншоте справа. (пример: [{“label”:”имя”, “value”:”cn”}] – если в cn в вашей Active Directory хранится полное имя пользователя); 4.2.3.7. При желании, соотнести дополнительные атрибуты; 4.2.4. Нажать «Сохранить изменения» для сохранения конфигурации.

(данные отображены для примера, руководствуйтесь вашей настройкой Active Directory)

4.2.5. Синхронизировать конфигурацию с Active Directory:

Необходимо перейти по адресу https://your_messenger_domain_or_ip/api/docs#/admin/update_user_api_v1_admin_users_update_get для отображения интерфейса API запроса на синхронизацию атрибутов (в качестве your_messenger_domain_or_ip укажите адрес вашего сервера с мессенджером)

4.2.6. Нажать «Try it out», после «Execute»

4.3. Авторизация через пользователя в Active Directory. 4.3.1. Необходимо выйти из текущего аккаунта (открыть боковое меню, нажать выйти); 4.3.2. Зайти в мессенджер под пользователем, заранее созданным в Active Directory; 4.4. Для тестирования работы сокетного соединения, можно отправить сообщение Администратору. 4.4.1. Перейдите во вкладку «Пользователи»; 4.4.2. Выберите в списке Администратор; 4.4.3. В открывшемся правом окне введите любоее сообщение и нажмите справа внизу на треугольник (иконка, обозначающая отправку сообщения), либо нажмите «Enter». 4.4.4. Далее необходимо выйти из текущего аккаунта и заново зайти за аккаунт Администратора с данными из п.4.1.3. 4.4.5. В случае успешного выполнения п.4.4.1. – п.4.4.3., отобразится непрочитанное сообщение:

4.5. Управление пользователями системы. Необходимо зайти в панель администратора и перейти во вкладку пользователи. 4.5.1. При необходимости, можно задать пользователю права администратора, путем переключения «флажка» Роли – для изменения записи, необходимо нажать на иконку «Карандаша» слева от логина в отображаемой записи пользователя; 4.5.2. Также задать количество одновременно возможных сессий в колонке «Ограничение авторизации».

5. Плагин «Уведомления»

Чтобы отправить уведомление(я), в мессенджер необходимо

5.1. Сгенерировать токен для нужной информационной системы: 5.1.1. Перейдите в панели администратора на вкладку «Настройка плагина уведомлений», нажмите на кнопку «Добавить Систему»;

5.1.2. Введите название системы – такое, как она в будущем будет отображаться пользователям; 5.1.3. Введите ссылку для закрытия уведомления, если для данной информационной системы необходимо подтверждение отработки задачи и ссылка отличается от введенной DELETE ссылки в .env файле.

По данному адресу, при закрытии задачи, будет отсылаться POST запрос, где в теле будет передаваться:

    {

        “notification_id”: 1

    },

Где 1 – id задачи (тип Integer);

5.1.4. Нажмите «Сгенерировать токен», чтобы получить токен для создания и закрытия уведомлений от новой информационной системы. 5.1.5. Нажмите на кнопку «Сохранить изменения» 5.1.6. Скопируйте токен, используйте при добавлении и закрытии уведомлений от новой информационной системы, подставляя в заголовки запроса свойство token.

5.2. Отправить POST-запрос по HTTP по маршруту: https://your_messenger_domain_or_ip/plugins/api/v1/tasks

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


    \[

    {

        "links": \[

        {

            "link": "ссылка на инструкцию",

            "title": "Инструкция пользователя"

        }

        \],

            "source": "appName",

            "buttons": \[

                {

                    "link": " <http://192.168.1.1/app-name/current-task-link>",

                    "type": "request",

                    "title": " Подтвердить действие",

                    "action": 0

                }

            \],

        "message": {

    "icon": " <http://192.168.1.1/images/icon1.png> ",

    "text": " Полный текст уведомления",

    "header": "Заголовок уведомления",

    "notification_text": "Короткий текст для пуша"

    },

    "priority": 0,

    "user_login": " test_login ",

    "notification_id": 123,

    "closing_check": false,

    "delete_api": " <http://192.168.1.1/app-name/task-123-delete/>"

    }

    \]

где:

Таблица 1. Описание тела запроса.

Атрибут

Описание

Тип данных

notification_id

Уникальный номер уведомления.

  1. Если ИС-отправитель генерирует на своей стороне ID уведомления, необходимо передать его с данным параметром;

  2. Иначе, необходимо удалить данный параметр при формировании тела запроса. В таком случае, мессенджер сгенерирует ID самостоятельно.

Integer

user_login

Логин пользователя в LDAP

String

priority

Приоритет уведомления для отображения в мессенджере, значения:

  • 0 – низший;

  • 1 – низкий;

  • 2 – невысокий;

  • 3 – средний;

  • 4 – высокий;

  • 5 – очень высокий

Integer

source

Источник уведомления. Необходимо отправлять источник такой, какой был задан при создании токена для информационной системы. Идет полное сопоставление. Если источник не будет совпадать с тем, что вшито в токен, система не даст создать или закрыть уведомление.

String

message.header

Заголовок уведомления

String

message.text

Текст уведомления

String

message.icon

Изображение системы

String

message.notification_text

Короткий текст для отображение в пуш-уведомлении

String

buttons

Массив активных кнопок в уведомлении. При формировании тела запроса, необходимо учитывать, что 1 объект в массиве кнопок – кнопка целевого действия (например, «открыть задачу» или «ознакомиться»), остальные – второстепенные (например, «открыть ИС» или «открыть документацию»)

Array[Object]

buttons.action

Уникальный номер кнопки

String

buttons.title

Текст кнопки

String

buttons.type

Тип кнопки

String

buttons.link

Ссылка при нажатии на кнопку кнопку

String

links

Массив ссылок в уведомлении. При отображении в мессенджере, формируются в колонку после конца списка массива кнопок.

Array[Object]

links.title

Текст доп.ссылки

String

links.link

Адрес доп.ссылки

String

closing_check

Необходимость «закрытия» уведомления в мессенджере от ИС-отправителя.

Логика работы:

  1. Если при нажатии целевого действия в уведомлении, ИС-отправителю необходимо убедиться, что оно действительно выполнено, то необходимо данному атрибуту поставить значение false. В таком случае:

  • Если у сервиса отдельное API для закрытия уведомления, необходимо его указать при создании токена информационной системы или передать в атрибут «delete_api»

  • Если нет отдельного API, необходимо удалить атрибут «delete_api» при формировании тела уведомления. В таком случае, API для закрытия уведомления возьмется общее – из конфигурационного .env файла мессенджера с сервера мессенджера (параметр TASKS_URL_DELETE)

При указании значения false, система отправляет POST запрос по одному из двух адресов, описанных выше. В этом случае, ИС-отправитель уведомления должна иметь возможность обрабатывать данный запрос. В случае, когда ИС-отправитель посчитала, что задача выполнена, необходимо послать POST запрос в мессенджер по маршруту https://your_messenger_domain_or_ip/plugins/api/v1/tasks/cancel с телом запроса:

{"tasks_id": [0]} – где необходимо передать либо 1 id уведомления, либо массив id уведомлений.

  1. Если при нажатии целевого действия в уведомлении, нет необходимости убеждаться в выполнении целевого действия, то необходимо поставить значение атрибуту true.

Boolean

Таблица 2. Типы кнопок

Тип кнопки

Описание

request

Отправка запроса по ссылке

direct

Перенаправления пользователя по ссылке

move

Напомнить позже

5.3. В качестве ответа от сервера, будет массив с ID созданных в системе уведомлений и статусами. ID будут в том порядке, в котором были отправлены уведомления; 5.4. Массивом можно отправлять задачи только от одного источника (т.к. идет верификация по токену источника); 5.5. Пример ответа от сервера:

    \[

    {

        "id": 123123,

        "status": 409

    },

    {

        "id": 123123123,

        "status": 200

    }

    \]

Статус 200 означает, что задача успешно создана, статус 409 означает, что был послан дубликат ID.

  1. Установка и обновление Desktop версий

Для корректной работы десктоп версий для Windows и Linux, необходимо:

6.1. Перенести файлы:

  • cosco.zip (архив с актуальной версией ПО для Linux)

  • latest-version.txt (текстовый файл с обозначением цифр актуальной версии ПО для Linux)

  • coscowin.zip (архив с актуальной версией ПО для Windows)

  • latest-version-win.txt (текстовый файл с обозначением цифр актуальной версии ПО для Windows)

  • lic.pdf (pdf файл лицензии мессенджера для отображения на клиенте)

6.2. Данные файлы, после запуска сервера мессенджера, будут отображаться по адресу {your-cosco-domain}/downloads/

6.2.1. Для установки десктоп клиента на Windows, необходимо запустить предоставленный msi-установщик с правами администратора и выполнить установку по умолчанию.

6.2.2. Для установки десктоп клиента на Linux, необходимо запустить предоставленный #install.sh install скрипт с правами администратора.

6.3. При появлении новых версий, необходимо заменять файлы версии текстовые и архивы. Запущенные клиенты ПО регулярно сверяют версию текущую, и лежащую на сервере. Если версии не совпадают, происходит автоматическое обновление клиента.

Last updated