AI_Chatbot / plugins /example-logger.js
LejobuildYT's picture
Upload 14 files
ce72224 verified
/**
* Example Plugin: Logger
*
* Dieses Plugin zeigt, wie man ein einfaches Plugin schreibt
* das Messages und Responses logt.
*
* Um Plugins zu schreiben:
* 1. Neue JS-Datei im /plugins Ordner erstellen
* 2. Export der Hook-Funktionen (onPluginInit, onMessageSent, etc.)
* 3. Plugin wird automatisch geladen!
*/
// Wird aufgerufen, wenn das Plugin initialisiert wird
export function onPluginInit(context) {
context.log('Example Logger Plugin initialized! 📝')
// Du kannst hier verschiedene Dinge machen:
// - State speichern
// - Event Listener registrieren
// - Daten fetchen
// Beispiel: Speichere Session-Start
window.pluginState = window.pluginState || {}
window.pluginState.sessionStart = new Date()
window.pluginState.messageCount = 0
context.log(`Session started at: ${window.pluginState.sessionStart}`)
}
// Wird aufgerufen, wenn der Benutzer eine Nachricht sendet
export function onMessageSent(context, detail) {
const { message, systemPrompt } = detail
window.pluginState.messageCount++
context.log(`📤 Message #${window.pluginState.messageCount}: "${message.substring(0, 50)}..."`)
// Beispiele für weitere Dinge, die man hier machen könnte:
// - Analytics tracken
// - Nachricht validieren
// - Benutzerdaten speichern
// - API calls machen
}
// Wird aufgerufen, wenn eine Antwort vom Model einkommt
export function onResponseReceived(context, detail) {
const { content, stats } = detail
context.log(`📥 Response received:`)
context.log(` - Length: ${content.length} characters`)
context.log(` - Tokens: ${stats.tokens}`)
context.log(` - Time: ${stats.time}s`)
// Beispiele für weitere Dinge:
// - Response analysieren
// - Sentiment analysieren
// - Qualität prüfen
// - In Datenbank speichern
}
// Optional: Weitere Hook-Funktionen die du definieren kannst:
// export function onError(context, error) { }
// export function onModelLoaded(context, model) { }
// export function onSettingsChanged(context, settings) { }