Skip to main content

Code-Beispiele & Best Practice

Einleitung

Auf dieser Seite werden Code-Beispiele und Best Practices für die Verwendung unserer RAGAI-API gezeigt. Diese können sich mit zukünftigen Releases ändern oder überarbeitet werden.

Best Practices

  • Verwenden Sie dialogStore, um Sitzungsdaten sicher zu speichern und abzurufen.
  • Nutzen Sie die Event-Hooks, um dynamische Reaktionen im Bot zu implementieren.
  • Implementieren Sie SCORM-Methoden nur in LMS-Umgebungen.

Beispiele

DialogStore

RAGAI.dialogStore.setItem("username", "Marko");
const username = RAGAI.dialogStore.getItem("username");

Events

RAGAI.EVENTS.triggerEventHook = function(hook, params){
console.log("der bot meldet", hook);
console.log("zusätzliche Information", params);
};
const isInactive = RAGAI.EVENTS.inActiveHook(30);
isInactive.action = function (i) {
console.log("Der Nutzer ist seit 30 Sekunden inaktiv und zwar bereits "+i + " mal");
};

Scorm

RAGAI.SCORM.LMSSetValue("score", "100");
await RAGAI.SCORM.LMSGetValue("score");
RAGAI.SCORM.scormHook = function(hook,value){
console.log("Hook wurde ausgeführt", hook);
console.log("erhaltener Wert", value);
}
RAGAI.SCORM.LMSGetValue("cmi.core.student_name");

Webhook

RAGAI.WEBHOOK.call("EMAILSENDEN", { 'to': 'anemailadresse@reflact.com', 'subject': 'hallo vom bot', 'body': 'das ist der text inhalt des bots' });

Weitere Methodenaufrufe

RAGAI.iframeCard("https://reflact.com", "reflactComIframe");
RAGAI.cancel();
RAGAI.userMessage("hallo Bot, ich bin der Benutzer.");
RAGAI.botMessage("hallo Nutzer, hier spricht der Bot");
RAGAI.botSay("ich bin ein Text der als stimme ausgegeben wird");
RAGAI.runMessage("sage dem nutzer dass er toll ist");

Code-Beispiele

Benutzername im LMS auslesen und weiter verwenden

Wenn der Bot in einem LMS läuft, kann er den Benutzernamen abfragen. Im Beispiel wird ein Overlay angezeigt, das den Benutzer mit “Hallo, [NAME]!” freundlich begrüßt.

async function updateLearnerName(){
var learnerName = await RAGAI.SCORM.LMSGetValue("cmi.core.student_name")
var learnerName = learnerName.split(",").reverse().join(" ").trim();
RAGAI.showOverlay("Hallo " + learnerName);
RAGAI.userBypass("ich bin " + learnerName);
}
updateLearnerName();

Benutzername aus individuellem Zugriffscode auslesen

Wenn der Bot über einen Zugriffslink geöffnet wird, können der "name" und die Metadaten ausgelesen und verwendet werden.

  var  name =  RAGAI.loggedInUser.guestId; // das ist der name des Zugrifflinks
var metadata = RAGAI.loggedInUser.metadata; // die Metadaten;
window.RAGAI.showOverlay("Hallo " + name +" deine Metadaten sind:"+ metadata);

Zeitverzögerte Bot-Nachricht

Nachrichten zählen (eingehend)

window.counter=0;
RAGAI.EVENTS.triggerEventHook = function(a, message) {
console.log(a,message);
if(a=='runComplete'){
window.counter++;
console.log("das war eingehende nachricht nummer: "+window.counter);
}
};

Overlay anzeigen

RAGAI.showOverlayWithButtons(
"Dieser Text wird über den Schaltflächen angezeigt",
[
{text:'ja',className:'btn btn-primary',onClick:function(){}},
{text:'nein',className:'btn btn-primary',onClick:function(){}},
]
);