06. 通联记录与日志¶
1. 通信记录 Comm Records(JWT)¶
GET /api/comm-records¶
参数:
- page
- page_size
- device_id
- group_id
- user_id(仅管理员全局模式)
- admin_mode=true(管理员后台查看全局)
返回示例:
{
"code": 200,
"message": "成功",
"data": {
"list": [
{
"id": 10001,
"device_id": 123,
"device_name": "BG7XXX-11",
"dev_model": 107,
"group_id": 1001,
"group_name": "深圳应急群",
"start_time": "2026-04-05 14:22:01",
"end_time": "2026-04-05 14:22:06",
"duration_ms": 5000,
"msg_type": 0,
"audio_url": "https://.../xxx.opus"
}
],
"total": 1,
"page": 1,
"page_size": 20
}
}
GET /api/comm-records/:id¶
DELETE /api/comm-records/:id(Admin)¶
2. 通信统计¶
用户侧(JWT)¶
GET /api/comm-records/user-statsGET /api/comm-records/user-trend
返回(示例):
{ "code": 200, "data": { "total_count": 120, "total_size": 93842012, "total_duration": 1280000 } }
管理侧(Admin)¶
GET /api/comm-records/stats(录制器内部统计)GET /api/comm-records/system-statsGET /api/comm-records/system-trend
3. 通信设置(Admin)¶
GET /api/config/comm-settings¶
PUT /api/config/comm-settings¶
请求:
{
"enabled": true,
"retention_days": 30,
"min_duration_ms": 300,
"max_duration_sec": 180,
"batch_upload_sec": 10
}
4. 通联日志 Logbook(JWT)¶
用户接口¶
GET /api/logbooksGET /api/logbooks/:idPOST /api/logbooksPUT /api/logbooks/:idDELETE /api/logbooks/:idDELETE /api/logbooks/batch
创建请求示例:
{
"my_callsign": "BG7XXX",
"time_utc": "2026-04-05 06:35:20",
"tx_frequency": 439.5000,
"rx_frequency": 439.5000,
"mode": "FM",
"callsign": "BG7YYY",
"their_rst": "59",
"my_rst": "59",
"notes": "首次通联"
}
批量删除请求:
{ "ids": [101, 102, 103] }
管理员接口(Admin)¶
GET /api/admin/logbooksGET /api/admin/logbooks/:idPUT /api/admin/logbooks/:idDELETE /api/admin/logbooks/:idDELETE /api/admin/logbooks/batch
5. 电台预设(JWT)¶
GET /api/user/radio-presetsPOST /api/user/radio-presetsPUT /api/user/radio-presets/:idDELETE /api/user/radio-presets/:idPUT /api/user/radio-presets/reorder
创建请求示例:
{
"name": "车载台",
"radio": "YAESU FTM-300",
"antenna": "车载吸盘",
"power": 25,
"qth": "Shenzhen",
"sort_order": 10
}
排序请求示例:
{ "orders": [{ "id": 1, "order": 1 }, { "id": 2, "order": 2 }] }