using MediatR;

namespace MktZaloService.API.Application.Commands.Messages;

/// <summary>
/// EN: Command to send a message to a Zalo user.
/// VI: Command để gửi tin nhắn đến người dùng Zalo.
/// </summary>
public record SendMessageCommand(
    Guid ConversationId,
    string Text,
    bool IsFromBot = true
) : IRequest<SendMessageResult>;

/// <summary>
/// EN: Result of sending a message.
/// VI: Kết quả gửi tin nhắn.
/// </summary>
public record SendMessageResult(
    bool Success,
    Guid? MessageId = null,
    string? ZaloMessageId = null,
    string? Error = null
);
