package org.dromara.talk.service;

import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

import java.util.List;
import java.util.Map;

/**
 * 聊天服务接口
 */
public interface IChatService {

    /**
     * 流式处理用户消息
     *
     * @param userMessage 用户消息
     * @param agentId 客服ID
     * @param agentGender 客服性别
     * @param ttsVcnList 发言人字典列表
     * @param conversationId 对话ID
     * @param isGreeting 是否为欢迎语
     * @param requestId 请求ID（用于判断是否为最新请求）
     * @param emitter SSE发射器
     */
    void processMessageStream(String userMessage, Long agentId, String agentGender, List<Map<String, String>> ttsVcnList, String conversationId, Boolean isGreeting, Integer requestId, SseEmitter emitter);
}
