A Python tool that parses call logs from the Telnyx API (or local CSV exports) and generates summary reports with charts, statistics, and CSV exports. Designed to give a clear picture of call volume, answer rates, duration trends, and failure patterns.
- Pull call records directly from the Telnyx CDR (Call Detail Records) API
- Parse local call log CSV files exported from the auto-dialer or Telnyx portal
- Generate summary statistics: total calls, answer rate, average duration, failure rate
- Export clean reports to CSV or JSON
- Plot call volume over time, status breakdown, and hourly distribution charts
- HTML report generation for easy sharing
- Python 3.9+
- A Telnyx account (optional — can also work with local CSV files)
pip install -r requirements.txt
git clone https://github.com/Cyber1245-ai/call-analytics-dashboard.git
cd call-analytics-dashboard
pip install -r requirements.txt
cp .env.example .envpython report.py --input call_log.csv --output report.htmlpython report.py --live --from 2025-01-01 --to 2025-01-31 --output january_report.htmlpython report.py --input call_log.csv --format json --output stats.jsoncall-analytics-dashboard/
├── report.py # CLI entry point and report generator
├── parser.py # Call log CSV and API response parser
├── stats.py # Statistics calculations
├── charts.py # Chart generation with matplotlib
├── telnyx_cdr.py # Telnyx CDR API client
├── templates/
│ └── report.html # HTML report template
├── requirements.txt
├── .env.example
├── .gitignore
├── LICENSE
└── README.md
=== Call Analytics Report ===
Period: 2025-01-01 to 2025-01-31
Total Calls: 342
Answered: 278 (81.3%)
No Answer: 48 (14.0%)
Failed: 16 (4.7%)
Avg Duration: 2m 14s
Peak Hour: 10:00 AM
MIT License. See LICENSE for details.