← Все статьи

Вставляем имя пользователя из СДО (LMS) в Articulate Storyline

Вставляем имя пользователя из СДО (LMS) в Articulate Storyline
Для повышения вовлечённости пользователя электронных курсов часто используется обращение к нему по имени. Это позволяет подавать информацию более адресно, повысить эффективность обратной связи и т.д. Однако в большинстве случаев для этого приходится в начале курса спрашивать у учащегося его имя. При этом чаще всего электронные курсы пользователи проходят в рамках системы управления знаниями (системы дистанционного обучения, lms). И в рамках этой системы имя пользователя уже известно. Давайте воспользуемся имеющейся в СДО информацией и сразу обратимся к учащемуся по имени (и возможно этим приятно его удивим). Для этого потребуется создать одну текстовую переменную и нехитрый код JavaScript, который мы вставим в наш курс.

1. Создаём текстовую переменную.

Для начала нам потребуется текстовая переменная, которая будет хранить имя пользователя, и которую мы будем выводить на экране. Я назвал свою переменную newName. Создаём новую переменную

2. Добавляем на слайд JavaScript.

Создаём новый триггер, который будет запускаться при начале показа слайда (When Timeline starts). Этот триггер будет исполнять код JavaScript (Execute JavaScript). А вот, собственно, и сам код:
var player = GetPlayer();

function findLMSAPI(win) {
  if (win.hasOwnProperty("GetStudentID")) return win;
  else if (win.parent == win) return null;
  else return findLMSAPI(win.parent);
}

var lmsAPI = findLMSAPI(this);
var myName = lmsAPI.GetStudentName();

// remove last name from array
var array = myName.split(' ');
var newName = array[0];

player.SetVar("newName", newName);
Что здесь написано: Переменной myName в рамках данного куска кода присваивается значение функции lmsAPI.GetStudentName(). Затем разбиваем полученную строку на имя и фамилию с помощью split, а затем присваиваем значения в виде элементов массива array[1], array[0] и пробела ' ' переменной newName в рамках данного кода, а затем передаем ее значение переменной newName в Storyline. Чтобы добиться нужного вам результата, вы можете присвоить переменной newName, например, только имя. В этом случае запись скорее всего выглядеть var newName = array[1]; – поменяйте цифру в квадратных скобках на 0, если вместо имени отображается фамилия.

3. Выводим имя на экран.

Для того, чтобы в Articulate Storyline вывести значение той или иной переменной на экран, добавьте текстовый блок и вставьте название переменной, со значками процента % с обеих сторон, например, %newName%. Переменная в окне редактора Articulate Storyline Вы не сможете посмотреть, как работает код в режиме предпросмотра (preview mode). Потребуется опубликовать проект и выложить в LMS, что в принципе понятно, ведь именно оттуда будет извлекаться имя пользователя :)
Понравилась статья? Подпишитесь на нашу рассылку, чтобы читать статьи сразу после публикации. Вступайте в наши группы Вконтакте, Facebook, Twitter и Instagram.