В этом примере мы создадим систему, которая будет перемещать "неактивных" пользователей в другую группу, если они не участвовали в жизни сообщества в течение определенного периода времени.
Ингредиенты:
- 1 пользовательское действие.
- 1 правило.
Шаг #1 - создание собственного действия в правилах
Назовём его "Деактивация неактивных пользователей". После создания этого действия, добавьте аргумент действия, который примет пользователя. Название аргумента - Пользователь, описание - Пользователь для деактивации, тип аргумента - Object, тип значения - Any Member ( \IPS\Member ), Обязательно - да.
Шаг #2 - создание правила
Используйте пользовательское действие "Деактивация неактивных пользователей" в качестве события, инициирующего срабатывание правила. Назовите правило "Деактивация пользователей, если неактивны".
После того, как вы создали правило, вам нужно будет добавить условие к правилу, которое проверяет, действительно ли пользователь соответствует критериям "неактивный".
Один из способов сделать это - добавить условие с проверкой "Значения атрибута пользователя". Назовите условие "Последняя активность пользователя за период времени". Сохраните, после чего перед вами появятся параметры, из которых необходимо выбрать "Последняя активность", далее выберите параметр "Within the last" и установите период времени, например 3 месяца. В настройках "Пользователи для проверки" должен быть установлен аргумент из пользовательского действия "Деактивация неактивных пользователей". Поскольку это условие будет проверять, БЫЛ ли пользователь активен в течение периода времени, обязательно установите параметр «НЕТ» для условия, то есть будет верно, только если он не был активен. Сохраните условие. Вы можете добавить другие условия по своему усмотрению.
Добавьте действие к этому правилу, которое будет выполнено при соблюдении условий правила. Выберите действие "Изменить основную группу пользователя". Назовите его "Перемещение пользователя в новую группу". Выберите новую группу, в которого переместить пользователя и укажите аргумент события "Деактивация пользователя".
Шаг #3 - Запланируйте пользовательское действие на регулярной основе.
Перейдите в раздел "Действия" в админцентре в правилах. Нажмите на выпадающее меню рядом с "Деактивация неактивных пользователей" и выберите "Запланировать вручную". Выберите "Повторно" в опции "Частота действия". Выберите подходящий период времени между запусками, например 7 дней. Поскольку вы хотите, чтобы это действие применялось ко всем пользователям сообщества, выберите "Пользователь" в качестве опции Массовый процесс. Сохраните форму.
Процесс настройки завершён!