package com.rj.service; import com.rj.entity.TtsRequestLog; import com.rj.utils.MinIOUrlGenerator; import com.rj.dto.AsrRequest; import com.rj.dto.AsrResponse; /** * TTS请求日志服务接口 * * @author rj * @date 2025-01-02 */ public interface ITtsRequestLogService { /** * 保存TTS请求日志 * * @param log 请求日志 * @return 是否保存成功 */ boolean saveTtsRequestLog(TtsRequestLog log); /** * 根据ID查询请求日志 * * @param id 日志ID * @return 请求日志 */ TtsRequestLog getTtsRequestLogById(String id); /** * 根据音频名称设置短链接 * * @return 是否设置成功 */ boolean setShortUrlByAudioName(MinIOUrlGenerator.UrlInfo urlInfo ); /** * 根据音频名称设置短链接(使用默认15分钟过期时间) * * @param audioName 音频名称 * @return 是否设置成功 */ boolean setShortUrlByAudioName(String audioName); /** * 语音转文本 * * @param request ASR请求 * @return ASR响应 */ AsrResponse speechToText(AsrRequest request); /** * 检查ASR服务是否可用 * * @return 是否可用 */ boolean isAsrServiceAvailable(); }