package com.ruoyi.phone.service;
|
|
import com.ruoyi.phone.domain.PhoneCallBackSHVO;
|
import com.ruoyi.phone.domain.PhoneCallBackVO;
|
import com.ruoyi.phone.domain.PhoneCallBackYQVO;
|
import com.ruoyi.phone.domain.PhoneCallRecordVO;
|
import com.ruoyi.phone.domain.PhoneCallReqYQVO;
|
import com.ruoyi.phone.domain.PhoneCallResultYQVO;
|
import com.ruoyi.phone.domain.PullTaskVO;
|
import com.ruoyi.task.domain.ServiceSubTaskDetailReq;
|
|
import java.util.List;
|
|
/**
|
* 电话业务Service接口(原 {@code IServiceSubtaskService} 里的电话部分)。
|
* <p>
|
* ⚠️ <b>这是模块内部接口</b>,其它模块请注入 {@code com.ruoyi.phone.api.PhoneFacade}({@code PhoneApi}),
|
* 以便自动获得开关降级与统一入口。
|
*
|
* @author ruoyi
|
* @date 2024-08-08
|
*/
|
public interface IPhoneService {
|
|
/**
|
* 电话回调任务(上海):语音识别结果上报,驱动多轮问答
|
*
|
* @param phoneCallBackVO 回调入参
|
*/
|
void phoneCallBack(PhoneCallBackVO phoneCallBackVO);
|
|
/**
|
* 电话ASR通话回调(雨绮)
|
*
|
* @param phoneCallReqYQVO 回调入参
|
* @return 下一步播报内容
|
*/
|
PhoneCallBackYQVO phoneCallBackYQ(PhoneCallReqYQVO phoneCallReqYQVO);
|
|
/**
|
* 雨绮任务拉取:按小时配额从 redis 队列取待外呼子任务
|
*
|
* @return 待外呼任务列表
|
*/
|
List<PullTaskVO> taskPull();
|
|
/**
|
* 电话侧患者问题结果落库(service_subtask_detail)
|
*
|
* @param serviceSubTaskDetailReq 明细入参
|
* @return 落库条数
|
*/
|
Integer saveQuestionAnswerPhone(ServiceSubTaskDetailReq serviceSubTaskDetailReq);
|
|
/**
|
* 通话记录回调(雨绮):无人接听 / 已完成 / 拒访
|
*
|
* @param phoneCallRecordVO 通话记录
|
* @return 处理结果(固定 1)
|
*/
|
Integer recordAccept(PhoneCallRecordVO phoneCallRecordVO);
|
|
/**
|
* 根据电话号码获取首个问题(三汇)
|
*
|
* @param phoneCallReqYQVO 入参
|
* @return 子任务与首题信息
|
*/
|
PhoneCallBackSHVO getFirstQues(PhoneCallReqYQVO phoneCallReqYQVO);
|
|
/**
|
* 三汇ASR结果处理
|
*
|
* @param phoneCallResultYQVO ASR 结果
|
* @return 下一题内容
|
*/
|
PhoneCallBackSHVO processResust(PhoneCallResultYQVO phoneCallResultYQVO);
|
}
|