MikoPBX extension that imports call history and call recordings from Beeline Cloud PBX
(cloudpbx.beeline.ru) and exposes them to external consumers (e.g. 1C) over REST.
The module is read-only with respect to Beeline calls: it does not place or control calls.
- Pulls call statistics from
GET /v2/statisticson a sliding time window (cron, every minute) and stores them as CDR rows (bee_cdrtable + published to MikoPBXWorkerCallEvents). - Downloads mp3 recordings for answered calls via
GET /v2/records/{extTrackingId}/{userId}/download(cron, every 5 minutes). - Serves imported CDR as XML at
GET /pbxcore/beeline-pbx/cdr?offset=X(public endpoint).
| Field | Meaning |
|---|---|
| API token | X-MPBX-API-AUTH-TOKEN value from Beeline Cloud PBX |
| API host | API host, default cloudpbx.beeline.ru |
| Time shift, hours | TZ compensation between Beeline and the PBX |
| Download call recordings | Toggle mp3 download on/off |
composer install
phpunit --configuration phpunit.xml.dist # unit tests for the pure CDR/transform logicSee CLAUDE.md for architecture, API details and design decisions.
License: GPL-3.0-or-later.