Analytics
Conversation analytics, telemetry, and data storage in Speaknode
Speaknode captures detailed data about every conversation for analysis and monitoring.
Conversation History
Every agent session is recorded with:
- Session metadata — agent, caller, start/end time, duration, status
- Audio recording — full session audio stored in object storage
- Transcription — text transcript of the conversation
- Telemetry spans — detailed OpenTelemetry traces of every step
Session List
Browse all conversations with filters:
- By agent
- By status (completed, failed, active)
- By date range
- By caller information
Session Detail
For each session you can view:
- Full conversation transcript with turn-by-turn breakdown
- Audio playback with waveform visualization
- Timing metrics per turn (latency, duration)
- Tool calls made during the session
- Error details (if failed)
Live sales analysis
The same machinery applies to recordings of human sales calls: an uploaded recording becomes a dialogue with roles and is scored against a set of characteristics — talk share, script compliance, objection handling, whether a next step was agreed.
- Upload — audio, audio with a ready transcript, or a transcript alone; in batches or as a ZIP archive from your telephony provider
- Transcription with diarization — an external service splits the recording into utterances with roles and timecodes
- Characteristics — computed metrics come from the backend, judged ones from a language model, every score carrying a justification and a quote
- Reports — aggregations by rep, by date, by company; saved views and a team dashboard
Agent conversations and human recordings live in the same entity and are measured by the same metrics — a bot and a live rep compare directly.
See Call Analytics for details.
Telemetry & Tracing
The platform uses OpenTelemetry for end-to-end tracing:
User speaks → STT span → LLM span → Tool call span → TTS span → User hearsEach conversation is a trace containing spans for every operation:
- Span name — operation type (STT, LLM inference, tool call, TTS)
- Duration — how long each step took
- Status — success or error
- Attributes — tags and metadata
- Events — detailed events within the span
Telemetry Pipeline
Python Worker → OTEL Collector → Kafka → ASP.NET Consumer → Database
→ Langfuse (internal observability)Data Storage
| Data | Storage |
|---|---|
| Session metadata | PostgreSQL |
| Audio recordings | S3-compatible object storage |
| Telemetry spans | PostgreSQL (via Kafka) |
| Analytics aggregations | ClickHouse |
| LLM traces | Langfuse |