Render Configuration: - render.yaml for declarative deployment - requirements-dashboard.txt (lightweight deps for cloud) - Updated .streamlit/config.toml for production - Updated app.py to auto-detect production vs local data Production Data: - Added data/production/test-07/ with 30 real call analyses - Updated .gitignore to allow data/production/ Documentation: - Added Render.com section to DEPLOYMENT.md with step-by-step guide Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
145 lines
3.4 KiB
JSON
145 lines
3.4 KiB
JSON
{
|
|
"call_id": "10122025_0082038C3CFBF6C6",
|
|
"events": [
|
|
{
|
|
"event_type": "HOLD_START",
|
|
"start_time": 85.23,
|
|
"end_time": null,
|
|
"duration_sec": null,
|
|
"metadata": {
|
|
"trigger_text": "Vamos a ver qué es lo que está pasando, José Miguel. Entonces la factura correcta es la de 55 con 65"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 117.29,
|
|
"end_time": 124.81,
|
|
"duration_sec": 7.519999999999996,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 282.88,
|
|
"end_time": 314.0,
|
|
"duration_sec": 31.120000000000005,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 444.64,
|
|
"end_time": 458.64,
|
|
"duration_sec": 14.0,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 494.52,
|
|
"end_time": 502.84,
|
|
"duration_sec": 8.319999999999993,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 548.21,
|
|
"end_time": 588.3,
|
|
"duration_sec": 40.08999999999992,
|
|
"metadata": {
|
|
"before_speaker": "A",
|
|
"after_speaker": "B"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 758.41,
|
|
"end_time": 768.01,
|
|
"duration_sec": 9.600000000000023,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 795.25,
|
|
"end_time": 848.92,
|
|
"duration_sec": 53.66999999999996,
|
|
"metadata": {
|
|
"before_speaker": "A",
|
|
"after_speaker": "B"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 1151.51,
|
|
"end_time": 1191.05,
|
|
"duration_sec": 39.539999999999964,
|
|
"metadata": {
|
|
"before_speaker": "A",
|
|
"after_speaker": "B"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 1682.9,
|
|
"end_time": 1763.97,
|
|
"duration_sec": 81.06999999999994,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
},
|
|
{
|
|
"event_type": "SILENCE",
|
|
"start_time": 1796.77,
|
|
"end_time": 1821.76,
|
|
"duration_sec": 24.99000000000001,
|
|
"metadata": {
|
|
"before_speaker": "B",
|
|
"after_speaker": "A"
|
|
},
|
|
"source": "observed"
|
|
}
|
|
],
|
|
"turn_metrics": {
|
|
"total_turns": 123,
|
|
"agent_turns": 62,
|
|
"customer_turns": 61,
|
|
"agent_talk_ratio": 0.4657568291376541,
|
|
"customer_talk_ratio": 0.30308462774504574,
|
|
"silence_ratio": 0.217916443492233,
|
|
"interruption_count": 0,
|
|
"avg_turn_duration_sec": 12.453104347826093,
|
|
"source": "observed"
|
|
},
|
|
"hold_count": 1,
|
|
"total_hold_duration_sec": 0.0,
|
|
"transfer_count": 0,
|
|
"silence_count": 10,
|
|
"interruption_count": 0,
|
|
"audio_duration_sec": 1867.0,
|
|
"language": "es",
|
|
"speaker_count": 2,
|
|
"created_at": "2026-01-19T13:39:12.819045"
|
|
} |