04. 群组与互联¶
1. 群组查询与基础操作(JWT + Approved)¶
GET /api/groups¶
参数:page、page_size、keyword
返回示例:
{
"code": 200,
"message": "成功",
"data": {
"items": [
{
"id": 1001,
"name": "深圳应急群",
"type": 1,
"is_joined": true,
"is_owner": false,
"online_count": 12,
"total_count": 53
}
],
"total": 1,
"page": 1,
"page_size": 20
}
}
GET /api/group/list(兼容)¶
GET /api/groups/:id¶
GET /api/groups/:id/devices¶
返回设备列表含 disable_send/disable_recv(仅设备级状态)。
POST /api/groups¶
POST /api/group/create(兼容)¶
请求:
{
"name": "深圳私有群",
"type": 2,
"password": "123456",
"callsign": "BG7XXX",
"allow_callsign_ssid": "BG7XXX-11",
"note": "内部使用"
}
POST /api/groups/search¶
请求:
{ "keyword": "深圳", "page": 1, "page_size": 20 }
POST /api/groups/:id/join¶
请求:
{ "password": "123456" }
GET /api/groups/:id/members¶
说明:当前实现仅群主可查看。
POST /api/groups/:id/leave¶
说明:仅私有群支持退出,群主不能退出自己创建的群。
2. 群组管理(Admin/GroupOwner)¶
说明:群组仅负责成员资格与设备踢出,不再提供群组级收发控制入口。
PUT /api/groups/:id¶
请求:
{
"name": "深圳私有群-新",
"type": 2,
"password": "654321",
"status": 1,
"note": "更新备注"
}
DELETE /api/groups/:id¶
DELETE /api/groups/:id/devices/:deviceId¶
功能:踢出设备并移入默认群组。
设备禁发/禁收调整请使用设备接口:
PUT /api/devices/:id¶
请求体可包含:
{ "disable_send": true, "disable_recv": false }
3. 兼容旧接口说明¶
POST /api/group/updatePOST /api/group/delete
这两个旧路径与当前处理器参数方式不一致(处理器读取 :id),客户端请使用新路径 PUT/DELETE /api/groups/:id。
4. 虚拟互联组(Admin)¶
POST /api/group-links¶
请求:
{ "name": "华南互联组", "note": "跨群互联", "status": 1 }
GET /api/group-links¶
GET /api/group-links/:id¶
PUT /api/group-links/:id¶
DELETE /api/group-links/:id¶
GET /api/group-links/available-targets¶
功能:获取可被关联的目标群组(非虚拟组)。
GET /api/group-links/:id/targets¶
POST /api/group-links/:id/targets¶
请求:
{ "target_group_id": 1001 }
返回:
{ "code": 200, "message": "添加成功", "data": { "link_group_id": 2001, "target_group_id": 1001, "target_count": 3 } }