6.3 KiB
Инструкция системного администратора
Системный администратор назначает сотрудников и имеет все рабочие права администратора. Его собственный доступ задаётся ответственным за сервер в ADMIN_IDS и не снимается через бот.
Разделение прав
| Действие | Системный администратор | Администратор | Кассир |
|---|---|---|---|
| Назначать администраторов/кассиров, снимать роли | Да | Нет | Нет |
| Просматривать список сотрудников | Да | Нет | Нет |
| Управлять пользователями, экспортом и модерацией | Да | Да | Нет |
| Создавать, редактировать, проводить и закрывать розыгрыши | Да | Да | Нет |
| Управлять результатами и удалять участия | Да | Да | Нет |
| Запускать административные рассылки | Да | Да | Нет |
| Привязывать/деактивировать счета | Да | Да | Да |
| Добавлять участие по счетам в открытый розыгрыш | Да | Да | Да |
| Проверять и подтверждать выдачу призов | Да | Да | Да |
Обычные пользовательские функции, включая разрешённый общий чат, доступны сотрудникам. Общий чат и административная рассылка имеют разные назначения.
Назначение сотрудника
- Сотрудник выполняет
/start, затем/my_idи передаёт вам свой числовой Telegram ID. Сверьте ID с самим сотрудником. - Откройте
/staffили/admin→ «Настройки» → «Сотрудники и права». - Выберите «Назначить администратора» или «Назначить кассира».
- Введите точный Telegram ID. Поиск по имени при выдаче прав не используется.
- Проверьте имя, ID, текущую и новую роль. Нажмите «Подтвердить изменение».
- Проверьте «Список сотрудников». Попросите сотрудника открыть
/adminили/cashier.
Можно начать ту же операцию командами /add_admin TELEGRAM_ID или /add_cashier TELEGRAM_ID. Они также требуют подтверждения кнопкой.
Смена роли и отзыв доступа
У сотрудника одна назначенная роль. Назначение кассиром бывшего администратора снимает его административные права; назначение администратором заменяет роль кассира.
Для полного отзыва рабочих прав выберите «Снять права сотрудника», введите ID и подтвердите. Пользователь сохраняет обычный доступ к боту. Команды /remove_admin ID и /remove_cashier ID снимают только соответствующую текущую роль; при несовпадении операция отклоняется.
Изменения применяются при следующем действии сотрудника, включая продолжение открытого диалога. Уже запущенная рассылка завершается отдельно. Повторное нажатие подтверждения не выполняет назначение снова. Если другой системный администратор успел изменить права, откройте назначение заново и проверьте актуальную роль.
Системных администраторов нельзя назначать, понижать или удалять через эти команды. Если кассир закреплён в CASHIER_IDS, бот направит к ответственному за сервер. Для новых сотрудников используйте назначение через /staff; изменение серверной конфигурации и перезапуск не нужны.
/admins и /cashiers открывают общий список сотрудников с указанием фактических ролей. Старые кнопки назначения ведут в новый раздел и не меняют права автоматически.
Инструкции сотрудникам
- Администратор:
/admin_helpили инструкция администратора. - Кассир:
/cashier_helpили инструкция кассира. - Эта инструкция:
/system_helpили кнопка в «Сотрудники и права».
Проверка работы
При проблеме запишите время, команду, роль и ID розыгрыша. Проверьте /start. Перед повторной рассылкой или выдачей приза проверьте журнал/статус: недоставленный ответ не означает, что операция не была сохранена.
Ответственный за сервер проверяет состояние контейнера, журнал, доступность базы данных и результат последнего деплоя по инструкции Drone. Изменения ролей журналируются с инициатором, получателем и новой ролью. Не передавайте токены и пароли сотрудникам для назначения через бот.