package com.infoepoch.pms.agent.platform.chat.application.dto;

import lombok.Getter;

/**
 * 发送消息后的响应 DTO。
 */
@Getter
public class MessageResponse {

    /**
     * 消息角色，固定为 assistant。
     */
    private final String role;
    /**
     * AI 回复内容。
     */
    private final String content;
    /**
     * 触发的智能体名称，未触发时为 null。
     */
    private final String agentTriggered;
    /**
     * 对话状态：
     * chatting   — 普通对话，未触发任何智能体；
     * collecting — 正在收集字段；
     * completed  — 表单已提交成功。
     */
    private final String status;

    /**
     * 构建发送消息响应。
     *
     * @param content        AI 回复内容
     * @param agentTriggered 触发的智能体名称，未触发传 null
     * @param status         对话状态
     */
    public MessageResponse(String content, String agentTriggered, String status) {
        this.role = "assistant";
        this.content = content;
        this.agentTriggered = agentTriggered;
        this.status = status;
    }
}
