2.3 Начальные настройки
Обновлено: 14 Июль 2026
Версия: 2.1.1
После успешной установки системы необходимо выполнить первоначальную настройку. Этот раздел описывает последовательность действий для запуска системы в работу.
Важно: Большинство настроек выполняется через пользовательскую админку (/settings/). Системная админка Django (/admin/) нужна для периодических задач Celery Beat, Django Sites и отдельных служебных операций. В описании каждого шага указано, где именно выполняется настройка.
Порядок выполнения первоначальной настройки
Рекомендуется выполнять настройку в следующем порядке:
- Активация лицензии
- Создание сотрудника
- Системные настройки и логотипы
- Настройка электронной почты
- Настройка LDAP (опционально)
- Настройка Telegram-ботов (опционально)
- Настройка ботов мессенджера MAX (опционально)
- Настройка Mattermost (опционально)
- Настройка шаблонов уведомлений
- Добавление подразделений
- Настройка регулярных задач
- Настройка адреса сайта
- Включение модулей
1. Активация лицензии
После установки система работает в пробном режиме (Trial). Без активации ключа доступ со временем ограничивается.
- Войдите под суперпользователем, созданным при установке
- Перейдите в "Настройки" → "License" (
/settings/license/) - Введите лицензионный ключ и сохраните его
Подробнее: 6. Лицензия и обновление.
2. Создание сотрудника
После установки есть только учётная запись суперпользователя. Для повседневной работы создайте первого сотрудника.
Создание через пользовательский интерфейс (рекомендуется)
Права: группа Personal-Create_employee, Personal-Edit, Rules-TopMan или суперпользователь.
- Перейдите в раздел "Персонал" → "Сотрудники"
- Нажмите кнопку "Создать сотрудника"
- Заполните форму (email, пароль, имя, фамилия, должность, мобильный телефон и др.)
- Сохраните запись
Примечание: если настроена электронная почта, система может отправить письмо с логином и паролем. Для работы сервис-деска может потребоваться клиент типа «Внутренний клиент» — система предупредит при создании, если его ещё нет.
Подробнее: 3. Управление пользователями.
Создание через системную админку
- Войдите в
/admin/ - Раздел "Users" → "Users" → добавьте пользователя:
- Email — логин
- Password — пароль
- User type —
employee - First name / Last name, Title, Mobile number
- Is active — обязательно
- Is staff — если нужен доступ к
/settings/и/admin/ - Затем "Personal" → "Employees" → привяжите созданного пользователя, статус
Working
Группы и права
Системные группы создаются при миграциях (System-Settings, группы модулей и др.). Назначьте сотруднику нужные группы в карточке сотрудника или через /admin/ → "Authentication and Authorization" → "Groups".
Для доступа к настройкам системы пользователь должен быть в группе System-Settings (или быть суперпользователем).
3. Системные настройки и логотипы
Системные настройки задают базовое поведение системы.
Важно: настраиваются через пользовательскую админку /settings/, а не только через Django admin.
- Войдите под учётной записью с правом
system.settings - Откройте "Настройки" (
/settings/) - Настройте параметры в разделе "Системные настройки"
Основные параметры:
- SITE_TITLE — служебное название системы (для ряда подписей и панели)
- Пример:
АСК Легарус - DEFAULT_TIMEZONE — часовой пояс по умолчанию для новых пользователей
- Пример:
Europe/Moscow - ALLOWEDFILEEXTENSION — разрешённые расширения файлов (через запятую)
- MAXSIZEFILE — максимальный размер файла в мегабайтах
- ITEMS_ON_PAGE — число записей на странице по умолчанию
Полный перечень настроек: Системные настройки.
Название и логотипы (MainSystemSettings)
Отображаемое название системы и логотипы задаются на вкладке "Базовые настройки" той же страницы /settings/:
- System Name — название в заголовках страниц (именно оно используется в интерфейсе)
- System description — описание системы
- Main logo — основной логотип (265×50)
- Favicon — иконка вкладки браузера (.ico, рекомендуется 32×32)
- Menu logo — логотип в меню (512×512)
- Login Page Logo — логотип на странице входа (225×225)
- Telegram bot QR code — QR-код Telegram-бота (150×150)
- Telegram bot URL for employees / MAX bot URL for employees — ссылки на ботов на странице входа
- Telegram notifications enabled / MAX notifications enabled — глобальные выключатели отправки уведомлений в мессенджеры
Загрузите изображения через форму и нажмите "Сохранить".
4. Настройка электронной почты
Настройка SMTP нужна для уведомлений и писем с паролями.
- Откройте
/settings/→ раздел "Настройки электронной почты" - Заполните поля:
Основные параметры:
- Email Host — SMTP-сервер (
smtp.mail.ru,smtp.yandex.ru,smtp.gmail.comи т.п.) - Email Port — обычно
587(TLS) или465(SSL) - Use TLS — рекомендуется включить для портов 587/465
- Email Host User / Email Host Password — учётные данные SMTP
Адреса отправителя:
- Default From Email — письма сотрудникам
- Default sender address for external — письма клиентам
- Server Email — системные уведомления администраторам
- Нажмите "Сохранить"
Проверка: создайте тестового пользователя или отправьте тестовое уведомление и убедитесь, что письмо дошло (проверьте «Спам» и логи приложения).
5. Настройка LDAP
Если используется Active Directory / LDAP — настройте интеграцию.
Обязательные условия
LDAP-авторизация работает только если одновременно:
- В "Настройки LDAP" включён флаг Enabled
- В системных настройках (раздел "Авторизация") включён AD_AUTH
Параметры LDAPConfig
- Откройте
/settings/→ "Настройки LDAP" - Заполните:
Подключение:
- Enabled — включить LDAP
- Server URI — например
ldaps://ldap.corp.domain.com:636 - Bind DN / Bind Password — учётная запись для поиска
- Ignore cert errors — только для тестов; в production лучше
False
Поиск пользователей:
- User Search Base, User Filter (например
(mail=%(user)s)), User Query Field
Группы (опционально):
- User Flags by Group — JSON вида:
{
"is_superuser": "CN=ask-admins,OU=ASK,DC=corp,DC=domain,DC=com",
"is_staff": "CN=ask-users,OU=ASK,DC=corp,DC=domain,DC=com"
}
Ключ — имя флага пользователя в ASK, значение — DN группы в AD.
- Включите AD_AUTH в системных настройках и сохраните обе формы
- Проверьте вход учётными данными AD
6. Настройка Telegram-ботов
В системе используются два Telegram-бота:
- Бот для сотрудников — задачи, отсутствия, уведомления (
tgbot, токенEMPLOYEE_TELEGRAM_BOT_TOKEN) - Бот для клиентов — заявки сервис-деска (
sdbot, токенTELEGRAM_BOT_TOKEN)
Создание ботов через BotFather
- В Telegram найдите @BotFather →
/newbot - Задайте имя и username (должен заканчиваться на
bot) - Сохраните токен
- Создайте второй бот аналогично
Настройка в ASK
Токены задаются в "Настройки" → системные настройки → раздел "Уведомления" (/settings/):
- EMPLOYEE_TELEGRAM_BOT_TOKEN — бот сотрудников
- TELEGRAM_BOT_TOKEN — бот клиентов техподдержки
Дополнительно на вкладке "Базовые настройки":
- укажите Telegram bot URL for employees (например
https://t.me/your_bot) - при необходимости загрузите QR-код
- убедитесь, что Telegram notifications enabled включено
Запуск сервисов
Боты работают через systemd (не supervisor):
sudo systemctl status tgbot # сотрудники: manage.py tgbot
sudo systemctl status sdbot # клиенты SD: manage.py sdbot
sudo systemctl enable --now tgbot sdbot
sudo systemctl restart tgbot sdbot
Юниты создаются при установке (см. 2.2 Установка). Celery (celery / celerybeat) по-прежнему управляется через supervisor.
7. Настройка ботов мессенджера MAX
Аналогично Telegram, в ASK есть два бота для мессенджера MAX:
- Бот для сотрудников — команды
runmaxbot, systemd-сервисmaxbot, токенEMPLOYEE_MAX_BOT_TOKEN - Бот для клиентов техподдержки — команда
sdmaxbot, systemd-сервисsdmaxbot, токенMAX_BOT_TOKEN
Через MAX-боты доступны уведомления, регистрация по номеру телефона и работа с заявками / отсутствиями (в зависимости от бота).
Создание ботов на платформе MAX
Создать бота может организация с верифицированным профилем на платформе MAX для партнёров.
- Откройте dev.max.ru и выберите верифицированный профиль
- Раздел «Чат-боты» → «Создать»
- Заполните карточку бота и дождитесь проверки
- После одобрения откройте бота → «Расширенные настройки» → «Настроить» и скопируйте токен
- Создайте два бота (для сотрудников и для клиентов), сохраните оба токена
Официальная документация: Создание чат-бота, Подготовка к разработке.
Ссылка на бота обычно имеет вид https://max.ru/@ник_бота (ник выдаётся платформой).
Настройка в ASK
В "Настройки" → системные настройки → "Уведомления":
| Настройка | Назначение |
|---|---|
| EMPLOYEE_MAX_BOT_TOKEN | Токен бота для сотрудников |
| MAX_BOT_TOKEN | Токен бота для клиентов техподдержки |
| EMPLOYEE_MAX_BOT_URL | Ссылка на employee-бота (дублируется также в базовых настройках) |
| EMPLOYEE_MAX_NOTIFICATIONS_ON | Включить персональные уведомления сотрудникам через MAX |
На вкладке "Базовые настройки":
- MAX bot URL for employees — ссылка на странице входа
- MAX notifications enabled — глобальный выключатель MAX-уведомлений
Запуск сервисов
Юниты maxbot и sdmaxbot могут отсутствовать сразу после установки скриптом — создайте их по образцу Telegram-ботов:
# /etc/systemd/system/maxbot.service
[Unit]
Description=ASK Employee MAX Bot
After=network.target
[Service]
Environment=DJANGO_SETTINGS_MODULE=config.settings
User=askprodadmin
Group=www-data
WorkingDirectory=/var/www/ask
ExecStart=/var/www/ask_env/bin/python /var/www/ask/manage.py runmaxbot
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
# /etc/systemd/system/sdmaxbot.service
[Unit]
Description=ASK Servicedesk MAX Bot
After=network.target
[Service]
Environment=DJANGO_SETTINGS_MODULE=config.settings
User=askprodadmin
Group=www-data
WorkingDirectory=/var/www/ask
ExecStart=/var/www/ask_env/bin/python /var/www/ask/manage.py sdmaxbot
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
Запуск:
sudo systemctl daemon-reload
sudo systemctl enable --now maxbot sdmaxbot
sudo systemctl status maxbot sdmaxbot
Логи: journalctl -u maxbot -f, journalctl -u sdmaxbot -f.
Автообновление из веб-интерфейса учитывает сервисы maxbot и sdmaxbot, если они установлены.
Регистрация пользователей в MAX-боте
Сотрудник или заявитель запускает бота в MAX и проходит привязку (обычно по мобильному номеру, который должен быть указан в карточке в ASK). После успешной регистрации в карточке появляется признак «В боте» (in_max_bot).
8. Настройка Mattermost
Mattermost используется для уведомлений в корпоративный мессенджер.
Создание вебхука в Mattermost
- "Integrations" → "Incoming Webhooks" → "Add Incoming Webhook"
- Укажите канал и скопируйте URL вебхука
Настройка в ASK
Вебхуки и флаги задаются в /settings/ → системные настройки → "Уведомления" (не только в /admin/):
- PUBLIC_MM_WEBHOOK / PUBLIC_MM_ON — общий канал
- PRIVATE_MM_WEBHOOK / SEND_PRIVATE_MM_ON — персональные уведомления
- MATTERMOST_URL — базовый URL сервера Mattermost для ссылок
Для персональных уведомлений укажите Mattermost Username в карточке сотрудника (Personal → Employees), без символа @.
9. Настройка шаблонов уведомлений
- Откройте "Настройки" → "Notify Templates" (
/settings/notify/) - Право доступа:
system.settings(группа System-Settings) - Отредактируйте шаблоны электронной почты и мессенджеров (Subject, Body, Style)
Основные шаблоны: приветствие сотрудника, сброс пароля, уведомления по заявкам и задачам, шаблоны Telegram / Mattermost / MAX.
Запасной путь: /admin/ → "System" → "Email templates" / "Messenger templates".
Подробнее: 5. Шаблоны уведомлений.
10. Добавление подразделений
Подразделения задают оргструктуру и влияют на права и маршрутизацию.
Через пользовательский интерфейс
- Откройте "Настройки" → "Personal" (
/settings/personal/) - Вкладка "Departments" → "Добавить подразделение"
- Укажите название, родительское подразделение (для иерархии) и сохраните
Просмотр структуры: "Персонал" → "Organizational Structure" (/personal/org-structure/).
Через системную админку
/admin/→ "Personal" → "Departments"- "Add Department" — заполните поля и сохраните
Пример иерархии:
Организация
├── Отдел информационных технологий
│ ├── Группа поддержки
│ └── Группа разработки
├── Отдел продаж
└── Отдел кадров
11. Настройка регулярных задач
Периодические задания выполняются Celery Beat. Настройка — через /admin/ → "Django Celery Beat" → "Periodic tasks".
Расписание из config/settings.py синхронизируется в БД (DatabaseScheduler). Часть задач появляется автоматически после запуска beat.
Задачи, создаваемые автоматически (основные)
- accrue_vacancy_day — начисление дней отпуска (1-е число, 5:00)
- notify_vacation_departures / notify_vacation_returns — уведомления об отпусках (ежедневно 9:30)
- check_stale_client_statuses — статусы клиентов (1-е число, 9:00)
- check-expiring-pages-daily — истекающие страницы БЗ (ежедневно 8:00)
- remind_employees_to_acknowledge / notify_manager_about_unacknowledged_documents — подтверждение документов БЗ
- retrain-classifiers-weekly — обучение классификаторов заявок (воскресенье 4:00)
- check-license-daily — проверка лицензии на legarus.ru (ежедневно 3:00)
- check_clients_contracts_validity — договоры клиентов (понедельник 6:00)
- crm_* — напоминания и актуализация CRM, проверка inbox CRM
- calculate-kpi-monthly — KPI (1-е число, 2:00)
- send-task-custom-notify — пользовательские уведомления по задачам (каждую минуту)
- send-request-alarm-notify — тревожные уведомления по заявкам (каждую минуту; создавать вручную не нужно)
- check-request-idle-watches, cleanup-request-email-drafts-daily
- задачи финансов/1С, CMDB, Bitrix24, Trading — по расписанию в
CELERY_BEAT_SCHEDULE
Задачи, которые обычно создают вручную
Создайте в "Periodic tasks", если нужны функции сервис-деска / задач по расписанию:
1. Проверка входящей почты
- Name:
check_incoming_email - Task:
servicedesk.tasks.check_incoming_email - Crontab: каждые 5–10 минут (
*/5или*/10)
2. Пользовательские уведомления по заявкам
- Name:
send_request_custom_notify - Task:
servicedesk.tasks.send_request_custom_notify - Crontab: каждые 5–10 минут (или каждую минуту)
В коде задача закомментирована в
CELERY_BEAT_SCHEDULE— без ручного создания работать не будет.
3. Ежедневный список заявок
- Name:
daily_requests_list - Task:
servicedesk.tasks.daily_requests_list - Crontab: например ежедневно в 9:00
4. Ежедневный список задач
- Name:
daily_task_list - Task:
tasks.tasks.daily_task_list - Crontab: например ежедневно в 9:00
Проверка Celery
sudo supervisorctl status celery celerybeat
tail -f /var/log/celery/beat.log
tail -f /var/log/celery/worker.log
12. Настройка адреса сайта
Адрес сайта нужен для корректных ссылок в письмах и уведомлениях.
/admin/→ "Sites" → "Sites"- Создайте или отредактируйте запись с ID = 2 (в
config/settings.pyзаданоSITE_ID = 2; сайт с id=1 по умолчанию Django не используется) - Domain name:
ask.example.com(безhttps://и пути) - Display name: например
АСК Легарус - Сохраните и проверьте ссылки в тестовом уведомлении
13. Включение модулей
- Откройте "Настройки" → "Modules" (
/settings/modules/) - Включите нужные модули каталога (сервис-деск, CRM, проекты, Trading, VoIP, CMDB и др.)
- Назначьте соответствующие группы прав сотрудникам
Подробнее по модулям: 4. Настройка модулей, 7. Управление модулями.
Проверка завершения настройки
После выполнения шагов проверьте:
- Лицензия — ключ активен, статус не Trial/Expired
- Вход — сотрудники входят локально или через LDAP
- Почта — тестовое письмо доходит
- Telegram —
tgbot/sdbotвsystemctl, боты отвечают на/start - MAX —
maxbot/sdmaxbotзапущены (если используются), регистрация по телефону работает - Mattermost — сообщения уходят в каналы при включённых флагах
- Celery Beat — нет ошибок в логах; входящая почта обрабатывается (если задача создана)
- Ссылки — в письмах корректный домен (Site ID=2)
- Модули — нужные модули включены, права назначены