Загрузка...

Send xAPI Actor Details from Workday Learning

Trying to send xAPI actor details from Workday Learning to an external LRS using Storyline?

🔗 Full blog post (code snippets included):
https://www.neuroinclusivelearninglab.com/post/how-to-send-accurate-xapi-actor-data-from-workday-learning

If you’ve discovered that Workday doesn’t supply learner identity for xAPI actor configuration — you’re not alone.

Because xAPI statements require a valid actor, many teams temporarily set a static or placeholder actor just to get statements sending. That works for testing, but it doesn’t give you clean learner-level data.

In this video, I walk through the solution that worked for me:

✔ How to retrieve learner identity at launch
✔ How to store it in a Storyline variable
✔ How to configure an external LRS
✔ How to define the xAPI actor using JavaScript
✔ How to verify the actor is correctly passed to your LRS

This approach allows you to send accurate learner data from Workday Learning without relying on undocumented APIs.

If you’re working with:
✅ Articulate Storyline
✅ xAPI custom interactions
✅ External LRS configuration
✅ Workday Learning

— this walkthrough should save you significant troubleshooting time.
📌 Code snippets referenced in this video:

Retrieve Learner's Identify:
let userName = lmsAPI.GetStudentName();

let array = userName.split(',');
let updatedName = array[1] + ' ' + array[0];

setVar("learnerName", updatedName);
Set the Actor via Javascript:
function getActor() {
var learnerName = "Unknown Learner";

try {
// Storyline player API
if (typeof GetPlayer === "function") {
var player = GetPlayer();
var nameFromVar = player.GetVar("learnerName");
if (nameFromVar && nameFromVar.trim() !== "") {
        learnerName = nameFromVar;
      }
    }
  } catch (e) {
    console.log("getActor: Error getting learnerName from Storyline variable:", e);   }

// Optional: fallback to SCORM learner name if available
try {
if (typeof lmsAPI !== "undefined" && typeof lmsAPI.GetStudentName === "function") {
var scormName = lmsAPI.GetStudentName();
if (scormName && scormName.trim() !== "" && learnerName === "Unknown Learner") {
        learnerName = scormName;
      }
    }
  } catch (e) {
    console.log("getActor: Error getting learner name from lmsAPI:", e);
  }

return {
"objectType": "Agent",
"account": {
"homePage": "https://www.example.com",
"name": learnerName
    }
  };
}
If this solution works for you, I’d love to hear about it in the comments.

#xAPI #WorkdayLearning #ArticulateStoryline #LearningDevelopment #LRS

Видео Send xAPI Actor Details from Workday Learning канала The NeuroInclusive Learning Lab
Яндекс.Метрика
Все заметки Новая заметка Страницу в заметки
Страницу в закладки Мои закладки
На информационно-развлекательном портале SALDA.WS применяются cookie-файлы. Нажимая кнопку Принять, вы подтверждаете свое согласие на их использование.
О CookiesНапомнить позжеПринять