Skip to main content

Модуль управления юзерами

Раздел содержит все инструменты по управлению юзерами вашей группы - как новыми, так и уже присутствующими в группе.

Для работы представленного функционала вам понадобится ГРУППА или КАНАЛ с включённой опцией «ЗАЯВКА НА ВСТУПЛЕНИЕ».

Как включить прием запросов на вступление в группу или канал:
1. ПУБЛИЧНОЙ ГРУППЕ можно включить напрямую в настройках - перейдите:
Настройки группы > Тип группы > Заявки на вступление
2. ПРИВАТНОЙ ГРУППЕ - по отдельной ссылке - перейдите:
Настройки группы > Тип группы > Управление приглашениями > Создать ссылку
Включите для этой ссылки опцию «Заявки на вступление».
3. ПУБЛИЧНОМУ КАНАЛУ - нельзя включить - никак.
4. ПРИВАТНОМУ КАНАЛУ - по отдельной ссылке - перейдите:
Настройки группы > Тип группы > Управление приглашениями > Создать ссылку
Включите для этой ссылки опцию «Заявки на вступление».

Принимать Запросы

При включении бот будет автоматически принимать запросы на присоединение в группах, для которых установлено требование отправлять запросы на присоединение, прежде чем пользователь сможет попасть в группу.
Режимы:
Выкл ⏹️ - функция выключена.
Вкл ▶️ - функция включена.

Условие Вступления

Позволяет вам назначить Условие которому должен соответствовать пользователь, чтобы быть допущенным в группу (чтобы его запрос на вступление был принят ботом автоматически).

Например Условием может являться наличие нужного количества рефералов или наличие Баланса в боте.

Наличие в интерфейсе этой настройки будет зависеть от того, активно ли расширение:
Условие для Запроса на Вступление.
Для подключения перейдите в вашем боте:
☞ 🔐Админ | 🧩Расширения | 📂Группы

Вам потребуется:
• Ввести само Условие (на основе данных бота).
• (ОБЯЗАТЕЛЬНО) Добавить сообщение об ошибке (придёт в сам бот)

В Сообщении об Ошибке - вы должны проинформировать юзера - каким Условиям он должен соответствовать для вступления в группу, а так же указать куда и как он должен перейти чтобы выполнить эти Условия в боте.

Опционально можно поместить Команду того раздела меню где это условие можно выполнить - чтобы облегчить юзеру поиск места и само выполнение.

Платная Подписка

Функция позволяет удалять из группы пользователей время подписки которых на группу закончилось. А также предупреждать их об окончании срока платной подписки на группу. При удалении юзера из группы бот может вызвать заданную вами команду.

Проверка Палатной Подписки и фактическое удаление юзеров происходит ночью (в часы минимальной активности) по системному времени (+3 UTC). Связано это с тем что подобные проверки это довольно ресурсозатратные процедуры.

Для работы представленного функционала вам ОБЯЗАТЕЛЬНО понадобится:
• Публичная Группа (без неё нельзя включить следующий параметр).
• Включённая опция «Заявки на вступление».
Настройки группы > Тип группы > Заявки на вступление
Проверка платной подписки через "Заявку" - это самый надёжный способ, потому как со 100% уверенностью, технически, нельзя гарантировать что бот не пропустит нелегальный вход по ссылке без запроса.

ВНИМАНИЕ: функция потребляет 10 "Токенов Функций" за проверку одного юзера. Оплата производится при каждой проверке, по количеству юзеров с данными Даты и Времени сохранёнными в переменной, которая указана в настройках функции. После Кика из группы переменная юзера очищается (деинициализируется) и проверки по ней не оплачиваются.

Сначала функция использует 50000 бесплатных ежемесячных Токенов (что примерно позволит проверять группу из 160 юзеров).


Переменная Даты

Указать Переменную (Даты и Времени) в которой хранится дата окончания "платной подписки" юзера на группу.
Удалите указанную тут ранее переменную чтобы отключить саму функцию Платной Подписки.

ВАЖНО: нельзя использовать ОДНУ и ту же переменную для разных групп. После удаления юзера из первой группы, данные в переменной будут очищены, что повлияет на другие группы и проверки в них ДЛЯ ЭТОГО ЮЗЕРА проходить уже не будут.

Хранящиеся в переменной данные вы пишете сами средствами конструктора, создавая в боте нужный вам интерфейс и на нужных вам условиях - бот только сравнивает текущую дату с сохранённой ВАМИ в переменной.

Задать Сообщение об Ошибке

Тут необходимо задать сообщение которое будет показано пользователю в боте, если он пытается получить доступ в платную группу не оплатив своё в ней пребывание. В сообщении добавьте инструкции которые позволят пользователю оплатить подписку.

Например:

❗️ Для вступления в группу необходимо купить подписку.
ℹ️ Нажмите команду /sub

Где: /sub - это команда раздела меню в котором собраны созданные вами Тарифы платной подписки.

Настроить Предупреждение

Предупреждать о Кике (в Днях) - нажатием кнопки выберите за сколько дней нужно начинать предупреждать юзера об окончании подписки.

Задать сообщение с предупреждением юзера об окончании срока подписки.

Например:

❗️ Ваша подписка истекает через %kickdays% дней.
📆 Дата: %date_var%

Где: kickdays - локальный макрос количества оставшихся дней, а date_var это данные в вашей переменной.

Если для сохранения данных в переменную вы использовали Системное Время функции dt_now(), однако при этом часовой пояс вашего бота не +3UTC, то в сообщении лучше использовать локальный макрос kickdate для отображения даты окончания подписки (он учитывает часовой пояс бота).

Настроить Кик

1. Исключать при Активности - опция позволяет удалить из группы "старых" юзеров (пришедших в группу до включения Платной Подписки), единственным доступным для этого способом - отслеживанием их активности в группе. Если юзер нелегально находящийся в группе напишет в ней сообщение - бот отметит это событие, при этом фактическое удаление юзера из группы произойдёт ночью при общей проверке юзеров на Платную Подписку.

Бот технически (так работает Телеграм) не может видеть всех пользователей группы, поэтому какого-то более или менее простого способа удаления "старых" юзеров из группы не существует (есть только сложные). Способ удаления "по активности" не даёт стопроцентной гарантии, поскольку замечены ботом будут только те пользователи которые как-то проявили себя в группе (например отправили сообщение). Способ основан на том что юзер НЕ ЗНАЕТ что послужило причиной его удаления - поэтому чтобы юзер не мог ассоциировать свои действия с удалением из группы, удаление происходит НЕ СРАЗУ, а ночью - вместе со всеми остальными.

2.1 Задать сообщение информирующее юзера о Кике из Группы по истечении срока подписки.

Например:

❌ Ваша подписка закончилась.
ℹ️ Приобретите новую подписку.

2.2 НЕОБЯЗАТЕЛЬНО. Задайте команду, которая будет вызвана, когда юзер будет исключён (Кикнут) из группы.

Этой командой вы можете вызвать нужные вам функции или совершить нужные вам действия (например перенести юзера в меню приобретения новой Платной Подписки)

• • •

Примерный механизм организации Тарифа платной подписки в боте:
0. Мы полагаем что ваш бот уже добавлен в публичную группу и является в ней адамином.
1. Создайте переменную дату и времени.
Например: date_var
2. Создайте кнопку для приобретения юзером нужного тарифа.
2.1 На кнопку поставьте Условие которое будет проверять достаточно ли средств на Балансе пользователя.
Например: {%balance% >= 100} (это стоимость)
2.2 На кнопку поставьте Команду (эту команду можно будет указать в сообщении об окончании подписки или в сообщении об удалении из группу (кик))
Например: /sub (с параметром «Переход по Команде»)
2.3 В самой кнопке добавьте «Action Чисел» который будет списывать указанную вами сумму с Баланса.
2.4 Добавьте второй «Action Чисел» который будет устанавливать дату, на месяц большую чем записано в созданной вами переменной Даты и Времени.
Например:
Действие {dt_add("%date_var%", 1, "m")}
2.5 Добавьте сообщение которое показывает новую дату подписки.
Например: Новая дата подписки: %date_var%.

Развёрнутое пособие по созданию Платной Подписки.

Сообщение После Вступления

Добавленное тут сообщение будет показано пользователю который (отправив запрос на присоединение) успешно присоединился к чату. При этом пользователю будет показана кнопка для (пере)запуска бота.

ВАЖНО: Данное сообщение будет показано юзеру если все остальные проверки уже пройдены (либо отсутствуют) и юзер допущен в группу.

Данное сообщение является НЕОБЯЗАТЕЛЬНЫМ и его можно не использовать.
В сообщении можно использовать картинку.
Удалите добавленное ранее сообщение чтобы бот перестал связываться с новыми пользователями.

ПОЯСНЕНИЯ: Единого сценария или контекста применения для этого сообщения - не существует. Например при отсутствии дополнительных проверок (когда бот просто автоматически подтверждает все заявки) данное сообщение будет показано  НОВОМУ пользователю - содержание данного сообщения при этом может быть соответствующим контексту "нового пользователя" - например описание преимуществ стать юзером бота. Если в боте присутствуют какие-то дополнительные проверки, например «Условие Вступления»  либо «Платная Подписка», в этом случае надо полагать пользователь УЖЕ является юзером бота, в той или иной степени понимания этого факта - поэтому содержание сообщения, по идее, должно отличаться от показываемого новому пользователю, кроме того, данное сообщение имеет смысл показывать если после прохождения проверок, в вашем сценарии, юзер (по каким-то причинам) так и не получил доступа к меню, либо вы хотите принудительно перенести его в Главное Меню.

Поэтому для осмысленного использования данной функции важно понимать механику её работы.

МЕХАНИКА РАБОТЫ: Бот имеет возможность отправить сообщение пользователям, которые отправили запрос на присоединение к чату (где бот является администратором), даже если пользователь никогда раньше не взаимодействовал с этим ботом. При этом, в нижнем меню пользователь увидит кнопку присоединения к боту, после нажатия на которую он окажется в Главном Меню бота, (в общем случае) став его юзером. Изначально данное сообщение задумывалось как приветственное, для новых пользователей, однако, с появлением дополнительных функций проверки, его работа стала неочевидной и более сложной.

ВАЖНО: Аккаунт пользователя НЕ станет юзером бота автоматически при получении сообщения. Пользователь должен будет либо запустить бота самостоятельно и осмысленно, используя кнопку показанную ботом в нижнем меню, либо ранее - другим способом отправить боту Сообщение или Команду. Добавлять юзера в бот автоматически - НЕЛЬЗЯ (было нельзя, нельзя сейчас и нельзя будет в будущем, ни платно, ни если очень нужно, а по ЭТИЧЕСКИМ соображениям).

❖ Общая последовательность работы функций


Для лучшего понимания механики работы функций данного раздела нужно иметь ввиду следующие моменты:

1. Единственным условием работы функционала данного раздела является включённая опция «Принимать Запросы». Без её включения остальные функции работать не будут.

2. Функции не связаны между собой и имеют свои собственные отдельные настройки не влияющие друг на друга.

3. Срабатывание данного функционала происходит в момент когда пользователь отправляет запрос на вступление в группу - при КАЖДОМ подобном запросе бот проверяет настройки функций этого раздела, при этом, ЗАНОВО происходит полная валидация ВСЕХ активных функций (все их условия должны соблюдаться).

4. Функции имеют определённую последовательность срабатывания друг относительно друга:
- При запросе на вступление проверяем включена ли функция «Принимать Запросы» (если НЕ включена - дальнейшие проверки не проводятся).
- Проверяем задано ли «Условие Вступления». Проводим проверки, показываем сообщения ошибок при необходимости (заданное вами или системное по умолчанию).
- Проверяем активна ли функция «Платная Подписка». Проводим проверки, показываем сообщения ошибок при необходимости (заданное вами или системное по умолчанию).
- Проверяем задано ли «Сообщение После Вступления». Если задано - показываем его в боте.

ВАЖНО: При создании функционала Управления Юзерами в группе (в частности при добавлении «Условия Вступления» либо «Платной Подписки»), важно понимать что конструктор позволяет вашему боту иметь ещё и СВОИ СОБСТВЕННЫЕ условия проверки пользователей, такие например как «Капча», «Подписка на Канал», «Вступление только по Реф. ссылке», «Наличие Юзернейма» и прочее. При этом работа всех этих проверок может порождать сложно предсказуемые взаимодействия. В частности проверки самого бота могут (и чаще всего - будут) ПРЕРЫВАТЬ линейный сценарий проверки вступления юзера в группу. Поэтому тестируйте ваши настройки и продумывайте все возможные варианты развития событий ЗАРАНЕЕ, имейте представление в каком разделе меню будет находиться юзер на каждой стадии его проверки. В общем случае, можно порекомендовать отключить проверки бота если вы используете функции группы по Управлению Юзерами, либо продумывайте ваши сообщения так чтобы юзер мог чётко понимать что он делает в каждый момент времени, А ТАКЖЕ имел возможность перейти к следующему этапу после завершения предыдущего.

❖ Сообщения об ошибках

❌ Ваш запрос на вступление в Группу или Канал - не был подтверждён.
Подписка на данную Группу или Каналу имеет Условия входа или Платную Подписку.
ℹ️ Обратитесь к администратору проекта чтобы узнать Условия входа.

Это системное сообщение по умолчанию для пользователя, оформлено в максимально нейтральном стиле. Сообщение говорит о том что вы (как создатель бота) забыли указать "Сообщение об Ошибке" либо в Условиях Вступления в группу либо в Платной Подписке. Задайте нужные сообщения и бот будет показывать их вместо системного.