EnotPRO Logo EnotPRO

LoadChatAdministrators

LoadChatAdministrators — загружает список администраторов чата из базы данных бота (кэш).

📝 Назначение

В отличие от GetChatAdministrators, который обращается к Telegram API за актуальными данными, LoadChatAdministrators загружает список администраторов из собственной базы данных бота (кэш). Это быстрее, не тратит лимиты API и не требует прав администратора для получения базовой информации.

Когда это нужно:

  • Быстрое получение списка администраторов чата
  • Когда не требуется абсолютная актуальность данных
  • При работе с чатами, где бот не является администратором (в кэше могут быть данные от последнего взаимодействия)

💡 Совет: Используйте LoadChatAdministrators для быстрых операций, где не критична актуальность. Для получения свежих данных (например, только что назначенного администратора) используйте GetChatAdministrators.

⚙️ Параметры

Параметр Тип Обязательный Описание
chat.id Integer/String ✅ Да ID чата/канала, администраторов которого нужно загрузить

📍 Результат

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

${load}

Структура ответа — массив объектов, каждый из которых описывает одного администратора.

Поле Тип Описание
status String Статус: creator (создатель) или administrator
user Object Информация о пользователе (id, first_name, username и т.д.)
is_anonymous Boolean Скрыт ли администратор (анонимный режим)
custom_title String Пользовательский титул (если есть)

Пример ответа:

[
  {
    "status": "creator",
    "is_anonymous": false,
    "user": {
      "id": 123456789,
      "first_name": "Иван",
      "last_name": "Создатель",
      "username": "creator",
      "is_bot": false
    },
    "custom_title": "Основатель"
  },
  {
    "status": "administrator",
    "is_anonymous": false,
    "user": {
      "id": 987654321,
      "first_name": "Пётр",
      "last_name": "Админ",
      "username": "admin",
      "is_bot": false
    },
    "can_be_edited": true,
    "can_manage_chat": true,
    "can_delete_messages": true,
    "can_restrict_members": true,
    "custom_title": "Модератор"
  }
]

🔄 Сравнение с GetChatAdministrators

Характеристика LoadChatAdministrators GetChatAdministrators
Источник данных База данных бота (кэш) Telegram API (актуальные)
Скорость Быстро (локальный кэш) Медленнее (запрос к API)
Лимиты API ❌ Нет ✅ Да (30 запросов/сек)
Актуальность Может отставать Абсолютная
Требует прав админа Нет (если данные есть в кэше) ✅ Да (бот должен быть админом)
Полнота прав Права администраторов (из кэша) Полные права администраторов

💡 Совет: Используйте LoadChatAdministrators для быстрого доступа к списку администраторов. Если нужно гарантированно получить актуальные права (например, после назначения нового админа), используйте GetChatAdministrators.

🧪 Примеры использования

Пример 1: Получение списка администраторов из кэша

Задача: Быстро получить имена всех администраторов чата.

Реакции:

  1. LoadChatAdministratorschat.id: ${chat.id}
  2. (Обработка массива администраторов)
  3. SendMessage → текст с перечислением администраторов

Пример 2: Проверка, является ли пользователь администратором

Задача: Проверить по кэшу, есть ли отправитель в списке администраторов.

Реакции:

  1. LoadChatAdministratorschat.id: ${chat.id}
  2. TriggerFolder с условием: поиск user.id в массиве ${load.*.user.id}
  • Внутри: (пользователь — администратор)
  • Иначе: (обычный пользователь)

Пример 3: Нахождение создателя чата

Задача: Найти владельца чата (status = creator).

Реакции:

  1. LoadChatAdministratorschat.id: ${chat.id}
  2. (Поиск элемента с status = creator в массиве)
  3. SendMessageВладелец чата: ${creator_name}

🔗 Связанные реакции

Реакция Назначение
GetChatAdministrators Получить актуальных администраторов из API
LoadChat Загрузить информацию о чате из кэша
LoadChatMemberCount Загрузить численность чата из кэша

🔗 Связанные разделы

Раздел Описание
Чаты/Каналы в админке Управление чатами через интерфейс

🔗 Связанные разделы

© 2025 EnotPRO. Все права защищены.