-
- Session ID:
- {session.sessionId || session.id}
-
-
-
- Start Time:
-
- {new Date(session.startTime).toLocaleString()}
-
-
-
- {session.endTime && (
-
- End Time:
-
- {new Date(session.endTime).toLocaleString()}
-
-
- )}
-
- {session.category && (
-
- Category:
- {session.category}
-
- )}
-
- {session.language && (
-
- Language:
-
-
-
- ({session.language.toUpperCase()})
-
-
-
- )}
-
- {session.country && (
-
- Country:
-
-
-
- ({session.country})
-
-
-
- )}
-
- {session.sentiment !== null && session.sentiment !== undefined && (
-
- Sentiment:
- 0.3
- ? "text-green-500"
- : session.sentiment < -0.3
- ? "text-red-500"
- : "text-orange-500"
- }`}
- >
- {/* TODO: Ensure sentiment display is accurate and potentially use icons/color-coding more explicitly */}
- {session.sentiment > 0.3
- ? "Positive"
- : session.sentiment < -0.3
- ? "Negative"
- : "Neutral"}{" "}
- ({session.sentiment.toFixed(2)})
-
-
- )}
-
-
- Messages Sent:
- {session.messagesSent || 0}
-
-
- {typeof session.tokens === "number" && (
-
- Tokens:
- {session.tokens}
-
- )}
-
- {typeof session.tokensEur === "number" && (
-
- Cost:
- €{session.tokensEur.toFixed(4)}
-
- )}
-
- {session.avgResponseTime !== null &&
- session.avgResponseTime !== undefined && (
-
- Avg Response Time:
- {/* TODO: Populate average response time, ensure formatting (e.g., "s" or "ms") */}
-
- {session.avgResponseTime.toFixed(2)}s
-
-
- )}
-
- {session.escalated !== null && session.escalated !== undefined && (
-
- Escalated:
-
- {session.escalated ? "Yes" : "No"}
-
-
- )}
-
- {session.forwardedHr !== null && session.forwardedHr !== undefined && (
-
- Forwarded to HR:
-
- {session.forwardedHr ? "Yes" : "No"}
-
-
- )}
-
- {/* Display transcript using TranscriptViewer if content is available */}
- {session.transcriptContent && session.transcriptContent.length > 0 && (
-
- )}
-
- {/* Fallback to link only if we only have the URL but no content */}
- {(!session.transcriptContent || session.transcriptContent.length === 0) && session.fullTranscriptUrl && (
-
- )}
-