using System.ComponentModel.DataAnnotations;

namespace TakeoutSaaS.Module.Sms.Options;

/// <summary>
/// 阿里云短信配置。
/// </summary>
public sealed class AliyunSmsOptions
{
    /// <summary>
    /// AccessKeyId。
    /// </summary>
    [Required]
    public string AccessKeyId { get; set; } = string.Empty;

    /// <summary>
    /// AccessKeySecret。
    /// </summary>
    [Required]
    public string AccessKeySecret { get; set; } = string.Empty;

    /// <summary>
    /// 短信服务域名。
    /// </summary>
    public string Endpoint { get; set; } = "dysmsapi.aliyuncs.com";

    /// <summary>
    /// 默认签名。
    /// </summary>
    public string? SignName { get; set; }

    /// <summary>
    /// 地域 ID。
    /// </summary>
    public string Region { get; set; } = "cn-hangzhou";
}
