Skip to main content

RAGAI – Die globale Bot-API

RAGAI ist das zentrale JavaScript-Objekt, das dir als Bot-Entwickler zur Verfügung steht. Es wird automatisch im Bot-Kontext bereitgestellt und enthält alle Module, Hilfsfunktionen und Services, die du für die Entwicklung interaktiver Bots benötigst.

Zugriff

Du kannst RAGAI direkt im Bot-Code verwenden – es ist als globale Variable auf window verfügbar:

// Beide Varianten sind gleichwertig
const ragai = window.RAGAI;
const ragai2 = RAGAI;
tip

In jedem Bot-Skill, jeder Nachricht und jedem Code-Baustein steht dir RAGAI automatisch zur Verfügung. Du musst es nicht importieren oder initialisieren.

Lifecycle

Wenn ein Bot geladen wird, durchläuft RAGAI folgenden Lebenszyklus:

  1. Initialisierung – Das RAGAI-Objekt wird erstellt und alle Module werden registriert.
  2. initialIdle – Der Bot befindet sich im Leerlauf und wartet auf die ersten Nachrichten. Du kannst mit RAGAI.initialMessages() auf die initialen Nachrichten warten.
  3. Interaktion – Der Nutzer interagiert mit dem Bot. Du kannst auf Events reagieren, Nachrichten senden und Module nutzen.
// Warte auf die initialen Nachrichten des Bots
await RAGAI.initialMessages();

// Jetzt kannst du sicher auf den Bot-Zustand zugreifen
console.log("Bot ist bereit!");

Erste Schritte

Ein einfaches Beispiel, das eine Nachricht sendet und auf ein Event reagiert:

// Nachricht an den Bot senden
await RAGAI.MSG.prompt("Hallo Bot!");

// Auf ein Event lauschen
RAGAI.EVENTS.on("message", (msg) => {
console.log("Neue Nachricht:", msg);
});

// Eine Variable für eigene Daten nutzen
RAGAI.VARIABLES.meinWert = 42;

// Confetti als visuelles Feedback
RAGAI.confetti();

Verfügbare Module

Die folgende Tabelle listet alle Module und Funktionen auf, die dir über RAGAI zur Verfügung stehen:

Kommunikation & Nachrichten

ModulBeschreibungDoku
MSGNachrichten senden, empfangen und verwaltenMSG
EVENTSEvent-System zum Reagieren auf Bot-EreignisseEvents
PROMPTBARSteuerung der EingabeleistePromptbar
BEFORE_SENDHooks vor dem Senden einer NachrichtBefore Send
CHAT_AVATARChat-Avatar konfigurierenChat Avatar
VIDEO_AVATARVideo-Avatar steuernVideo Avatar

Daten & Speicher

ModulBeschreibungDoku
KEYVALKey-Value-Speicher (nutzerbezogen)KeyVal
PROJECTKEYVALKey-Value-Speicher (projektbezogen)ProjectKeyVal
DIALOGSTOREDialog-Verlauf speichern und ladenDialogstore
DOCSEARCHDokumentensuche durchführenDocSearch

UI & Darstellung

ModulBeschreibungDoku
STAGEBühne / Darstellungsbereich steuernStage
OVERLAYOverlay-Fenster anzeigenOverlay
CARDSKarten-DarstellungCards
CHARTSDiagramme erstellenCharts
DOMDOM-Manipulation im Bot-KontextDOM
FUSIONVIEWFusionView-IntegrationFusionView

KI & Generierung

ModulBeschreibungDoku
AITEXT_OPENAITextgenerierung mit OpenAIAI Text OpenAI
AITEXT_OLLAMATextgenerierung mit OllamaAI Text Ollama
AIIMAGE_OPENAIBildgenerierung mit OpenAIAI Image OpenAI
AIIMAGE_STABLEDIFFUSIONBildgenerierung mit Stable DiffusionAI Image SD

Gamification & Interaktion

ModulBeschreibungDoku
SCOREPunktestand verwaltenScore
SKILLSkill-SystemSkill
QUIZQuiz-FunktionalitätQuiz
TRAINTrainingsmodusTrain
SCORMSCORM-IntegrationSCORM

Medien & Externe Dienste

ModulBeschreibungDoku
AUDIOAudio-Wiedergabe und -AufnahmeAudio
YOUTUBEYouTube-Videos einbettenYouTube
VIMEOVimeo-Videos einbettenVimeo
MIROMiro-Board-IntegrationMiro
GAMMAGamma-Präsentationen generierenGamma
ADOBECONNECTAdobe Connect-IntegrationAdobe Connect

Hilfsfunktionen & Utilities

ModulBeschreibungDoku
HELPERAllgemeine HilfsfunktionenHelper
DOWNLOADDatei-Downloads auslösenDownload
WAITFORAuf Bedingungen wartenWaitFor
WEBHOOKWebhooks aufrufenWebhook
MAILE-Mails versendenMail
LOGLogging-FunktionenLog
INFOBot- und ProjektinformationenInfo
SUPERVISORSupervisor-ModusSupervisor
toastrToast-Benachrichtigungen anzeigenToastr

Extras & Sonstiges

ModulBeschreibungDoku
FUNCTIONSLeeres Objekt für eigene FunktionenExtras
VARIABLESLeeres Objekt für eigene VariablenExtras
PARENTKommunikation mit dem übergeordneten iFrameExtras
BOTAPIBot-API für externe KommunikationExtras
BOTMANAGERReferenz auf den BotServiceExtras
DIALOGRECORDERDialog-AufzeichnungExtras
confetti()Konfetti-AnimationExtras
cancel()Denkprozess abbrechenExtras
chance()Zufallsdaten-BibliothekExtras
qsQueryString-BibliothekExtras
resetBot()Bot zurücksetzenExtras
restartBot()Bot neu startenExtras
runMessage()Nachricht senden (deprecated)Extras
loggedInUserAktueller NutzerExtras
lastThreadIdLetzte Thread-IDExtras
initialMessages()Initiale NachrichtenExtras
serviceRAGAI-InstanzExtras