AI_Chatbot / plugins /analytics.js
LejobuildYT's picture
Upload 14 files
ce72224 verified
/**
* Example Plugin: Analytics
*
* Dieses Plugin tracked User-Behavior und sammelt Stats
*/
const analytics = {
sessionStart: null,
messagesCount: 0,
totalTokens: 0,
totalTime: 0,
averageResponseTime: 0,
messageHistory: [],
}
export function onPluginInit(context) {
analytics.sessionStart = new Date()
context.log('📊 Analytics Plugin started')
context.log(`Session ID: ${analytics.sessionStart.getTime()}`)
}
export function onMessageSent(context, { message, systemPrompt }) {
analytics.messagesCount++
analytics.messageHistory.push({
type: 'user',
content: message,
timestamp: new Date(),
})
context.log(`Message #${analytics.messagesCount}`)
}
export function onResponseReceived(context, { content, stats }) {
analytics.totalTokens += stats.tokens
analytics.totalTime += stats.time
analytics.averageResponseTime = analytics.totalTime / analytics.messagesCount
analytics.messageHistory.push({
type: 'assistant',
content: content.substring(0, 100),
timestamp: new Date(),
tokens: stats.tokens,
responseTime: stats.time,
})
context.log(`📈 Stats:`)
context.log(` Messages: ${analytics.messagesCount}`)
context.log(` Total Tokens: ${analytics.totalTokens}`)
context.log(` Avg Time: ${analytics.averageResponseTime.toFixed(2)}s`)
// Mache diese Daten global verfügbar
window.analytics = analytics
}