Логика курса, часть 2. Управление действиями и обработчики

*
2023-11-30 08:04
Функционал, описанный в данной статье, в полном объеме доступен в СЭО 3КL, начиная с версии 4.1.6a.
Если вы используете более раннюю версию системы — обратитесь с заявкой на проведение обновления в службу технической поддержки ООО «Открытые технологии».

Инструкция по разделу «Логика курса». Часть 2. Управление действиями и обработчики

«Логика курса» (ЛК) — инструмент, позволяющий автоматизировать процессы отправки уведомлений, записи на курс, отписки от курса и внесения изменений в профиль подписчиков в зависимости от широкого ряда условий и настроек.

Данная инструкция описывает настройки «Обработчиков» и «Управления действиями» Логики курса.

Содержание:

4. Управление действиями. Обработчики Логики курса

Перейдем к настройке обработчиков Логики курса и действий, см. Рис.4.

Рис 4. Управление действиями. Обработчики.

4.1. Виды обработчиков

Обработчики ЛК можно условно поделить на два типа:
Обработчики при активации и обработчики при деактивации.

  • При активации выполняются действия при смене статуса с неактивного на активный, «Условие: логика курса активна».
  • При деактивации — наоборот — при смене статуса с активного на неактивный. «Условие: логика курса неактивна".

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

  • Однократные выполняют блок действий один раз.
  • Периодические выполняют действия многократно с указанным интервалом.
Примечание.
Повторно попасть на страницу «Управление действиями» ЛК можно нажав на иконку или описание элемента ЛК в курсе. При этом, мы сначала попадаем на страницу Просмотра Логики курса (описание в п.7). На этой странице нужно нажать на ссылку «Управление действиями» в верхнем подменю. См. рис.4.1.

Рис 4.1. Переход из Просмотра ЛК в Управление действиями.

Чтобы перейти в настройки обработчика, нажмем на пиктограмму «шестеренка», см. Рис.4.

4.2. Настройки обработчика

Рис 4.2.1. Настройки обработчика.

«Включить» — «Нет/Да». Включение и выключение обработчика. По умолчанию выключен.

«Отсрочка активации». Данная настройка позволяет отложить момент срабатывания действий обработчика на время от секунд до нескольких недель. Выполнение действий произойдет не сразу при смене статуса, а через указанный промежуток времени после смены статуса.

«Срабатывает» — «1 раз / Периодично». Будет ли обработчик срабатывать один раз или периодически, с указанным ниже интервалом.

«Интервал». Время, через которое периодически будет запускаться обработчик.

«Условие» — «Логика курса активна / Логика курса не активна». Указывает, когда срабатывает обработчик — при активации или при дезактивации ЛК. Эта опция позволяет делать инверсию срабатывания обработчика на оба изменения состояния ЛК.

Пример. К примеру, включим обработчик, укажем однократное срабатывание при активации логики курса и сохраним настройки.

 Рис 4.2.2. Настройки обработчика. Пример.

-Вернуться к содержанию-

5. Управление действиями. Добавление действий.

После сохранения настроек, на странице «Управление действиями», см. Рис.5, мы видим последнее время изменения обработчика — поз. (1). Теперь добавим в обработчик действия, которые необходимо выполнять — «Выберите действие» — поз. (2).

Рис 5. Добавление действий.

Возможных действий четыре:

  • Отправить сообщение
  • Записать в поле профиля
  • Записать на курс
  • Отписать от текущего курса

Добавляются они нажатием на значок « + » рядом с выбранным действием.

5.1. Отправить сообщение

Рис 5.1.1. Добавление действия «Отправить сообщение».

Настройки задачи.

«Включить» — «Да/Нет». Включить отправку сообщений.
«Получатель» — «Преподаватель / Куратор / Студент». Отправлять сообщения можно преподавателям, кураторам или студентам.
«Текст уведомления» — поле для текста, который необходимо отправить по почте. В текст можно вставить макроподстановки. В это поле нужно ввести текст сообщения, который будет высылаться пользователям. При создании сообщений удобно пользоваться макроподстановками.

Макроподстановки

Макроподстановки позволяют использовать в тексте письма динамически меняющиеся элементы, например, название курса или ФИО студента. В тексте сообщений возможно использование следующих макроподстановок:

Доступные макроподстановки:

{CURRENTDATE} — Текущая дата в формате d-m-Y H:i:s;
{CURRENTTIMESTAMP} – Позволяет записать текущую дату в поле профиля пользователя типа «Дата»;

Макроподстановка {CURRENTTIMESTAMP} может быть применена только для действия «Записать в поле профиля».

{STUDENTFULLNAME} — ФИО студента;
{STUDENTPROFILELINK} — Ссылка на профиль студента;
{COURSEFULLNAME} — полное название курса;
{COURSELINK} — Ссылка на курс;
{MODULEPAGE} — Ссылка на страницу текущего элемента с сообщением;
{MODULENAME} — Текущее название элемента курса.

Макроподстановки данных студента:

{FIRSTNAME} — Имя;
{LASTNAME} — Фамилия;
{EMAIL} — Адрес электронной почты;
{CITY} — Город;
{COUNTRY} — Страна;
{LANG} — Предпочитаемый язык;
{DESCRIPTION} — Описание;
{URL} — Веб-страница;
{IDNUMBER} — Индивидуальный номер;
{INSTITUTION} — Учреждение (организация);
{DEPARTMENT} — Отдел;
{PHONE1} — Телефон;
{PHONE2} — Мобильный телефон;
{ADDRESS} — Адрес;
{FIRSTNAMEPHONETIC} — Имя — фонетическая запись;
{LASTNAMEPHONETIC} — Фамилия — фонетическая запись;
{MIDDLENAME} — Отчество или второе имя;
{ALTERNATENAME} — Альтернативное имя.
{PROFILE_FIELD_XXXX} — где XXXX — краткое имя настраиваемого поля профиля пользователя. Подставляет значение из указанного кастомного поля профиля (доступно с версии 3.5.6a).
{USERNAME} — Логин (доступно с версии 3.5.6a). 

В том месте в тексте письма, где нужно подставить необходимые данные, указывается макроподстановка из списка. Система проанализирует текст письма, найдет все макроподстановки и вместо них вставит данные из курса и профиля пользователя.

На скриншоте приведён пример приветственного письма новому студенту, содержащему макроподстановки:

Рис 5.1.2. Пример сообщения с макроподстановками.

В поле «Краткое уведомление» указывается текст сообщения, которое будет отправляться по СМС, если вы захотите настроить эту отправку. Здесь поддерживаются те же самые макроподстановки.

Примечание. Отправка сообщений по СМС.
Одной из отличительных возможностей работы данного элемента курса является отправка уведомлений по СМС через провайдера otsms. Для этого необходимо настроить плагин otsms (зарегистрироваться на sms.ru, оплатить услуги, внести в настройки API ID). В настройках получения уведомлений указать, что можно отсылать уведомления через провайдера otsms, в профиле заполнить поле «Телефон», в логике курса указать текст сообщения, которое будет отправляться по СМС.
Подробную информацию по этому вопросу можно изучить здесь: «Настройка отправки уведомлений пользователю по СМС».

«Отправлять от имени» — здесь указывается от имени кого отправлять сообщения – от имени «Студента / Преподавателя / Администратора».

«Выберите отправителя» — выбор конкретного лица (пользователя), от которого будет отправлено сообщение.

По завершении редактирования сохраняем настройки — «Сохранить».

-Вернуться к содержанию-

Права на получение уведомлений

Важно помнить, что отправка уведомлений происходит с учетом прав пользователей. 

 По умолчанию роль «Студент» имеет право получать уведомления для студентов, роль «Учитель» имеет право получать уведомления для учителей, роль «Куратор» — для кураторов. Если в курсе используются нестандартные роли, и пользователям с этими нестандартными ролями необходимо получать уведомления, в их роли нужно добавить соответствующие права:

mod/otcourselogic:is_student,
mod/otcourselogic:is_teacher,
mod/otcourselogic:is_curator.

Право mod/otcourselogic:is_curator имеет контекст пользователя, права для учителя и студента в контексте курса.

Следующее возможное действие.

5.2. Записать в поле профиля

Рис 5.2. Добавление действия «Записать в поле профиля».

«Включить» — «Да/Нет». Включение и выключения действия.

«Запись в поле профиля» — «Список полей». В списке полей присутствуют как стандартные, так и «кастомные» поля профиля пользователя, которые можно добавить в систему (см. инструкцию «Добавление кастомных (настраиваемых) полей в профиль пользователя».

«Шаблон макроподстановки». В этом поле указывается значение, которое нужно записать в поле профиля. Здесь также поддерживаются макроподстановки.

По завершении редактирования сохраняем настройки — «Сохранить».

5.3. Записать на курс

Обратите внимание на то, что Логика Курса срабатывает только в отношении подписчиков текущего курса. Это значит, что этот инструмент не подходит для записи пользователей на текущий курс, т.к. если Логика Курса сработала, значит, они уже являются подписчиками текущего курса.
Зато при помощи этого инструмента можно подписать подписчиков текущего курса на другой курс по событию или по условию.
Примеры:
1. Если во входном тестировании набрано меньше определенного количества баллов, записать на курс "ликбеза" для повторения предыдущего материала.
2. Если с даты предыдущей аттестации, которая указана в профиле пользователя прошло больше года, записать его повторно на аттестационный тест, обнулив предыдущие попытки тестирования и результаты.

Рис 5.3.1. Добавление действия «Записать на курс».

«Включить» — «Да/Нет». Включение и выключения действия.

«Курс». Здесь в верхнем поле выбирается категория курса и в нижнем — курс из этой категории.

«Роль». Роль, с которой пользователь будет записан на курс.

«Перезапись на курс» — «Нет/Да». Нужно ли пользователя перезаписать на курс. «Да» — Если у пользователя имеется подписка на курс, то он будет отписан и записан по новой.

«Восстановить оценки» — «Нет/Да». Нужно ли пользователю восстановить оценки при записи на курс. «Да» — Оценки по выбранному курсу будут восстановлены для пользователя.

«Очистить модули курса» — «Нет/Да». Нужно ли очищать модули курса, которые пользователь уже проходил, например, попытки отправки заданий или тестирования. «Да» — Все попытки в элементах тест и задание будут очищены для пользователя.

Пример:
К примеру, чтобы перезаписать пользователя в курс, для прохождения им курса «с чистого листа», нужно поставить: 
«Перезапись на курс» — «Да»
«Очистить модули курса» — «Да»
При таких настройках пользователь будет подписан в курс, все его предыдущие попытки прохождения заданий и тестов будут удалены. См. Рис.5.3.2.

По завершении редактирования сохраняем настройки — «Сохранить».

Рис 5.3.2. Добавление действия «Записать на курс». Пример.

5.4. Отписать от текущего курса

Обратите внимание на то, что сразу после отписки пользователя от текущего курса он перестанет как-либо обрабатываться Логикой Курса. Перезапись пользователя на текущий курс этим инструментом невозможно.

 Рис 5.4. Добавление действия «Отписать от текущего курса».

 «Включить» — «Да/Нет». Включение и выключения действия.
Здесь особенных настроек нет, просто включение. При активации пользователи будут отписаны от курса.

По завершении редактирования сохраняем настройки — «Сохранить».

-Вернуться к содержанию-

5.5. Перезапись пользователя на курс без сохранения оценок

Если необходимо отчислить пользователя из курса и записать его заново без сохранения оценок за такие элементы, как «Задание» и «Тест», нужно добавить действие  «Записать на курс» в условие. Правильно настроенное условие будет выглядеть следующим образом:

Рис. 5.5.1. Условия для перезаписи пользователя в курс.
Пошаговые настройки

1. Добавление ограничения. При добавлении элемента ЛК в курс нужно, в первую очередь, настроить ограничение доступа.
Добавим, к примеру, ограничение по городу в поле профиля пользователя «Город». Для срабатывания ЛК нужно, чтобы у пользователя в поле профиля «Город» было указано значение «Москва». Ограничение может быть любым в зависимости от потребностей в конкретной ситуации.

Рис. 5.5.2. Ограничение по полю профиля пользователя.

2. Добавление условия. После добавления ограничения нужно нажать кнопку «Сохранить и показать».  На открывшейся странице выбрать вкладку «Управление действиями». Выбрать «Условие: логика курса активна».

Рис. 5.5.3. Выбор действий.

Далее добавляется действие «Записать на курс».

Рис. 5.5.4. Добавление действия «Записать на курс».

После нажатия на кнопку со знаком «+» откроется страница с настройками. Они должны быть заполнены следующим образом:

Рис. 5.5.5. Настройка действия «Записать на курс».
Обязательно обратите внимание на настройки «Перезаписать на курс» и «Очистить модули курса». Они обязательно должны быть переведены в значение «ДА»!

После сохранения настроек ВСЕ пользователи, в полях профилей которых значение «Город» соответствует значению «Москва»,  будут перезаписаны в этот курс и все выполненные ими задания/тесты и оценки за них обнулятся.

-Вернуться к содержанию-

6. Обработчики и действия

Добавлять в один обработчик можно сразу несколько действий, все они будут выполнены последовательно при срабатывании данного обработчика. Обработчиков можно добавлять несколько, все они будут срабатывать в установленное время.

Пример:

Рис 6.1. Примеры добавленных действий.

При наведении на (?) можно увидеть подсказку по выбранному действию.

-Вернуться к содержанию-

7. Страница просмотра Логики курса

Перейдем на страницу просмотра самого элемента Логика курса. Здесь отображается таблица статусов пользователей. Мы только что добавили ЛК и статусы еще не пересчитаны, поэтому здесь нет пользователей и данных. Обычно к этой странице устанавливается доступ только учителям.

Рис. 7.1. Пересчет состояния.

При нажатии на «Пересчитать состояния», мы увидим пересчитанные текущие состояния.

Указан пользователь, его роль, группа, состояние ЛК и дата последнего изменения состояния ЛК:

Пример:

Рис. 7.2. Пример № 1.

Можно перейти по ссылкам в начале каждой строки (иконка с часами) и посмотреть логирование срабатывания обработчиков. Поскольку, ничего еще не выполнялось, логи у нас пустые. Как только обработчик будет выполнен, это действие будет залогировано, будет указано время и успешно или не успешно было выполнено действие. Например, так:

 Пример:

Рис. 7.3. Пример № 2.

или

Рис. 7.4. Пример № 3.

На этом ознакомление с обработчиками и управлением действиями закончено.

Можно перейти к Части 3 данной инструкции — «Примеры использования Логики курса»

 

-Вернуться к содержанию-

 

Теги: Логика курса, элемент курса
Рейтинг ответа: 5 (2 оценок)

Комментарии запрещены