You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

34 lines
1.6 KiB

package echomeet
import (
"yunyan/comm"
"yunyan/pb"
)
// @Summary 获取会议记录能力清单(支持语言 + 可选总结大模型)
// @Description 一次性下发客户端做界面所需的两份清单,全部来自后台配置、服务端下发,客户端不写死:
// 语言取后台「会议记录服务」编排里在用的识别/翻译服务的 languages 字段并集(按优先级顺序去重),
// any_language=true 表示存在未限定语言的服务、该段实际不受列表约束;总结大模型同
// echomeet_getsummaryservices(client_choice 为后台开关,关闭时只返回默认项)。
// 后台改配置经 NATS 广播即时生效(另有 10 分钟定时兜底),客户端可按需重拉。
// @Tags Echomeet
// @Accept json
// @Produce json
// @Security BearerAuth
// @Param user body pb.EchomeetGetCapabilitiesReq true "请求数据"
// @Success 200 {object} comm.HttpResult{data=pb.EchomeetGetCapabilitiesResp} "响应数据"
// @Router /api/home/echomeet_getcapabilities [post]
func (this *apiComp) GetCapabilities(session comm.IUserSession, req *pb.EchomeetGetCapabilitiesReq) (resp *pb.EchomeetGetCapabilitiesResp, errdata *pb.ErrorData) {
asrLangs, asrAny := this.module.providers.TranscribeLanguages()
mtLangs, mtAny := this.module.providers.TranslateLanguages()
clientChoice, services := this.module.providers.SummaryServices()
resp = &pb.EchomeetGetCapabilitiesResp{
TranscribeLanguages: asrLangs,
TranscribeAnyLanguage: asrAny,
TranslateLanguages: mtLangs,
TranslateAnyLanguage: mtAny,
ClientChoice: clientChoice,
SummaryServices: services,
}
return
}