ytolsky hai 1 mes
pai
achega
13ec1f2cd4
Modificáronse 4 ficheiros con 184 adicións e 1 borrados
  1. 2 0
      .gitignore
  2. 56 0
      CHANGELOG.md
  3. 126 1
      README.md
  4. BIN=BIN
      adminutl.zip

+ 2 - 0
.gitignore

@@ -0,0 +1,2 @@
+*.bak
+/.idea

+ 56 - 0
CHANGELOG.md

@@ -0,0 +1,56 @@
+# v 0.12.1   27/07/2026
+- Добавлена опция "Скрывать пароли" в Базовых CLI операциях.
+- Расширена документация в README.
+- Правка синтаксических ошибок.
+- Улучшена совместимость инсталлятора с windows.
+
+# v 0.12   24/07/2026
+- Поправлен инсталлятор на предмет установки скина.
+- Поддержка Astra Linux в помощнике. В связи с этим используется библиотека libencode-perl вместо libencode-imaputf7-perl.
+- Правка в инсталляторе в связи поддержкой Astra Linux.
+- Добавлен просмотр и восстановления из корзины второго уровня (CG>=6.5.6alpha7), пока штатным образом.
+
+# v 0.11.1   23/07/2026
+- Поддержка в инсталляторе Linux с менеджером пакетов DNF (RED OS, RHEL и т.д.)
+
+# v 0.11    17/07/2026
+- Добавлен инсталлятор `install.pl` который делает всю работу по установке всех модулей автоматически. При кластерной установке необходима будет до настройка.
+- Обновлены все компоненты кроме pbx.tar
+- Вывод версий всех компонентов.
+- Поправлен механизм подписок
+- Поправлен механизм фильтрации при обновлении
+- Дополнительные предупреждения при некорректных операциях.
+- Изменено окно добавления аккаунтов для групповых операций. В частности, добавлена загрузка из файлов, загрузка из групп, загрузка всех кроме списка.
+- Конвертация почтовых и календарных папок в другой формат. Требует обновления помощника. При большом числе элементов формат mslc не рекомендуется из-за проблем со скоростью.
+- Помощник требует дополнительные библиотеки, все необходимые можно установить командой:  
+`sudo apt install libmime-base64-perl libjson-perl libfile-path-perl libfile-copy-recursive-perl libencode-imaputf7-perl`
+
+# v 0.10    02/07/2026
+Обновления только в admutl.wcgp(server.tar):  
+- Смена логики обработки подписок. Теперь учитываются псевдонимы с учетом что бы не образовывались дубли. Более качественная очистка при удалении.  
+- Значительный рефакторинг. Удалены лишние зависимости.
+
+# v 0.9 
+- Добавление функционала в подписках.
+- Исправлена авторизация, перевод, описание.  
+
+Для более старых версий рекомендуется обязательно обновиться.  
+
+# v 0.8
+Исправления, рефакторинг.
+
+# v 0.7
+Исправления, фильтры везде, сортировка всех таблиц.
+
+# v 0.6
+Много правок и улучшений.
+Добавлена обработка логов.
+
+# v 0.5
+Много правок и улучшений.
+
+# v 0.3
+Первый рабочий вариант.
+
+# v 0.1.1
+Сформирован скелет скина.

+ 126 - 1
README.md

@@ -1,2 +1,127 @@
-# adminutl
+# AdminUtlSkin v0.12.1
+## Оглавление
+
+1. [Состав](#состав)
+1. [Установка](#установка)
+   * [install.pl](#автоматическая-установка)
+   * [adminutlskin.tar](#установка-скина)
+   * [server.tar](#установка-серверного-обработчика)
+   * [admhelper.pl](#установка-файла-помощника-для-взаимодействия-с-логами)
+   * [pbx.tar](#установка-модифицированной-версии-конференции)
+1. [Работа с панелью](#работа-с-панелью)
+   * [Общая информация](#общая-информация)
+   * [Закладки скина](#закладки-скина)
+     * [Аудиоконференции](#аудиоконференции)
+     * [Подписка/Делегирование](#подписка-делегирование)
+     * [Групповые операции](#групповые-операции)
+     * [Работа с логами](#работа-с-логами)
+
+
+## Состав
+В состав скина входят файлы:  
+- [**adminutlskin.tar**](#установка-скина) - Сам административный скин.
+- [**server.tar**](#установка-серверного-обработчика) - Серверный обработчик запросов скина.
+- [**admhelper.pl**](#установка-файла-помощника-для-взаимодействия-с-логами) - Файл помощника для взаимодействия с логами.
+- [**pbx.tar**](#установка-модифицированной-версии-конференции) - Модифицированная версия конференции. Позволяет включать новую логику её работы или оставлять старую. Видеть и управлять подключенными к конференции аккаунтами.
+- [**install.pl**](#автоматическая-установка) - Автоматический установщик. Позволяет установить/обновить компоненты скина. Если не требуется установка помощника запуск может вестись с другого хоста если есть доступ к необходимым портам. В том числе и с компьютеров под windows.
+- `README.md` - Данное описание.
+
+## Установка
+
+### Автоматическая установка
+Инсталлятор устанавливает необходимые библиотеки и устанавливает все компоненты по запросу. Включая редактирование манифеста.  
+Запускаем `install.pl` в консоли с root правами из каталога куда распаковали архив:  
+`sudo ./install.pl`  
+или  
+`sudo perl ./install.pl`  
+Для установки помощника инсталлятор надо запускать на хосте с CommuniGate Pro  
+При инсталляции в кластерной конфигурации необходимо будет поправить пути в /opt/CommuniGate/admhelper.pl  
+
+### Установка скина
+Создается скин с названием, например _AdminUtl_ с нужным уровнем видимости (в нужном домене или в базовом каталоге, что бы был доступен всем доменам). И загружается туда.  
+Пользователи->Интерфейсы->Именованные Интерфейсы->Задать имя, например AdminUtl->Создать->Именованные Интерфейсы->AdminUtl->Выбрать файл `adminutlskin.tar`->Загрузить файл
+
+### Установка серверного обработчика
+Загружается в корневую папку скинов. Содержит файл обработчика: _adminutl.wcgp_ .  
+Пользователи->Интерфейсы->Выбрать файл `server.tar`->Загрузить файл
+
+### Установка файла помощника
+Для работы с логами и конвертации папок необходимо установить файл помощника. Например, кладём его в каталог _/opt/CommuniGate_. Затем в настройках Помощника Приложений задаем Путь к Программе: _/usr/bin/perl /opt/CommuniGate/admhelper.pl_  
+Указываем название **admhelper** и ставим состояние "Включено".  
+Перед запуском настройте каталоги в `admhelper.pl`  
+Для работы необходимо установить необходимые библиотеки (обычно могут быть уже установлены): `sudo apt install libmime-base64-perl libjson-perl libfile-path-perl libfile-copy-recursive-perl libencode-perl`  
+либо `sudo dnf -y install perl-MIME-Base64 perl-JSON perl-File-Path perl-File-Copy-Recursive-Reduced perl-Encode perl-Digest-MD5 perl-IO-Socket-SSL perl-LWP-Protocol-https perl-HTML-HTML5-Entities perl-HTML-Parser`  
+Если используется Манифест Дочерних Процессов (файл: /var/CommuniGate/Settings/ChildProcs.data) - то нужно добавить туда строку _/usr/bin/perl /opt/CommuniGate/admhelper.pl_  
+При остановке помощника может высветиться ошибка: "Проблема с помощником admhelper. ошибка чтения". Не обращайте внимания. Проблема поправлена в CG 6.5.6alfa7
+Если требуется более быстрый многопоточный поиск, например по кластеру - есть вариант, компилируемый в выполнимый файл. Ему не требуется установки дополнительных библиотек.
+
+```
+Для кластера требуется смонтировать (NFS,SSHFS,SMB,...) для всех членов кластера каталоги с логами: 
+/var/CommuniGate/SystemLogs/ например в каталог /mnt/CGServers
+NFS пример:  
+  Члены кластера:  
+    В файле /etc/exports добавляем: 
+      /var/CommuniGate/SystemLogs IP_УТИЛИТЫ/255.255.255.0(ro,insecure,nohide,no_subtree_check)  
+    Потом: 
+      sudo exportfs -a  
+    Открыть порты если надо: 
+      sudo ufw allow from IP_УТИЛИТЫ to any port 111 ; sudo ufw allow from IP_УТИЛИТЫ to any port 2049  
+  Член с утилитой:  
+    mkdir /mnt/CGServers  
+    Для все членов кластера:  
+       mkdir /mnt/CGServers/host_IP_ЧЛЕНА_КЛАСТЕРА  
+       в файл /etc/fstab добавить: 
+         IP_ЧЛЕНА_КЛАСТЕРА:/var/CommuniGate/SystemLogs /mnt/CGServers/host_IP_ЧЛЕНА_КЛАСТЕРА nfs defaults 0 0  
+       Потом: 
+         sudo mount -a  
+    Для члена кластера с утилитой добавляем свой каталог:  
+      ln -s /var/CommuniGate/SystemLogs /mnt/CGServers/host_IP_УТИЛИТЫ  
+```
+
+### Установка модифицированной версии конференции
+Загружается в область PBX. С нужной видимостью - в конкретный домен или глобально.  
+Пользователи->PBX->Выбрать файл `pbx.tar`->Загрузить файл
+
+## Работа с панелью
+
+### Общая информация
+Запуск панели обычно происходит путем перехода по адресу:  
+<http://YOUR_SERVER:8100/?Skin=AdminUtl>  
+или  
+<https://YOUR_SERVER:9100/?Skin=AdminUtl>
+
+В верхней строке можно выбрать домен, с которым работаем. Так же там указываются версии компонентов и можно настроить видимость закладок  
+Все таблицы обладают возможностью сортировки по столбцам, для этого нажать на соответствующий заголовок.  
+Также практически при выводе любых результатов есть возможность экспорта в TSV формате.  
+Для работы с панелью необходимы права "Может менять установки Всех Доменов и Пользователей". Для работы с логами нужны права: "Может наблюдать за Сервером".  
+
+### Закладки скина
+
+#### Аудиоконференции
+Нажав "Настройки" можно включить "Модернизированный режим(выделенный хост)". Этот режим позволяет осуществлять аудиоконференции независимо от входа/выхода владельца.
+В интерфейсе, если конференция идёт, виден список подключенных участников. Возможно отключать от конференции или включать/отключать звук для отдельных участников.
+
+#### Подписка Делегирование
+Позволяет видеть/редактировать/добавлять все подписки и делегирования в домене. При добавлении подписки она не требует подтверждения от того, кому направлена подписка.
+Так же кнопка "Подтвердить все" подтверждает все неподтвержденные подписки.
+
+#### Групповые операции
+Сначала происходит выбор аккаунтов. Возможно выбрать всех, выбрать группу, загрузить список из внешнего файла, выбрать всех кроме списка, ввести аккаунты вручную или воспользоваться поиском.
+При выборе опции "Расширенный поиск" поиск идет и по полю "Настоящее имя".  
+После выбора нужных аккаунтов производится определённая операция с ними:  
+* **Информация об аккаунтах** - Выводится базовая информация: когда создан, дата последнего логина, IP последнего логина и можно включить вывод информации об XIMSS и SIP сессиях.
+* **Базовые CLI операции** - [Описание CLI команд](https://doc.communigatepro.ru/russian/development/CLI.html). Вывод информации через самые основные CLI команды.
+Возможно выбрать нужный параметр отдельно. Например, в операции GetAccountInfo указать в параметре ключ _Created_. Возможно скрывать параметры связанные с паролем.
+* **Произвольная CLI** - Выполняется произвольная команда. Макрос `%acc%` заменяется на название аккаунта. Возможно выполнение CLI команд и без привязки к аккаунтам - добавляем в список выбранных один любой аккаунт и макрос не используем.
+Например "GETVERSION".
+* **Операции с папками** - Для работы данного раздела необходимо установить помощник. Позволяет конвертировать почтовые и календарные папки между четырьмя возможными форматами.[Описание форматов.](https://doc.communigatepro.ru/russian/admin/storage/Mailboxes.html#Formats)
+Помощник нужен для доступа к файловой системе аккаунта. Иначе, например папку INBOX штатными путями сменить формат не получится. Операцию необходимо производить аккуратно. В данный момент не рекомендуется конвертировать папки с большим количеством элементов в формат mslc.
+Это может замедлить в сотни раз.
+* **Корзина второго уровня** - Механизм просмотра и восстановления из корзины второго уровня. Работает с версии CG 6.5.6alpha7. После релиза возможно функционал рассширится.
+
+#### Работа с логами
+Для работы с данным пунктом необходима установка помощника.  
+Если удалить дату поиска, то поиск будет происходить по всем доступным файлам. Поиск по ключу использует механизм аналогичный как в [стандартном административном скине.](https://doc.communigatepro.ru/russian/admin/sysadmin/Logs.html#Keyed)  
+Если требуется более быстрый многопоточный поиск, например по кластеру - есть вариант, компилируемый в выполнимый файл. Ему не требуется установки дополнительных библиотек.
+
 

BIN=BIN
adminutl.zip