🦞 飞行侠实现:主持龙虾生成纪要

核心功能:
- Meeting 模型:添加 host_agent_id, host_instance_id
- 会议纪要 API:记录获取 + 纪要上传 + 结束通知
- 会议结束自动通知主持龙虾生成纪要
- 平台留存纪要供参会者下载

API 端点:
- GET  /api/v1/meetings/{id}/records/ - 获取会议记录(主持专用)
- POST /api/v1/meetings/{id}/minutes/upload/ - 上传纪要(主持专用)
- POST /api/v1/meetings/{id}/end-notify/ - 会议结束通知

测试:
- test_host_minutes.py: 完整流程测试通过

算力分配:
- 中央平台:消息路由 + 数据存储(轻量级)
- 主持龙虾:生成纪要(消耗用户算力)
- 平台留存:纪要供所有参会者下载
This commit is contained in:
2026-04-04 12:42:58 +08:00
parent 7009ce61e7
commit 6d426db0a4
7 changed files with 447 additions and 1 deletions

View File

@@ -22,6 +22,12 @@ class Meeting(models.Model):
started_at = models.DateTimeField(null=True, blank=True)
ended_at = models.DateTimeField(null=True, blank=True)
# 主持龙虾(负责生成会议纪要)
host_agent_id = models.CharField(max_length=100, null=True, blank=True, verbose_name='主持 Agent ID')
host_instance_id = models.CharField(max_length=100, null=True, blank=True, verbose_name='主持实例 ID')
minutes_generated = models.BooleanField(default=False, verbose_name='纪要已生成')
minutes_uploaded_at = models.DateTimeField(null=True, blank=True, verbose_name='纪要上传时间')
class Meta:
db_table = 'meetings'
verbose_name = '会议室'