package com.ga.external.message;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * NHN Cloud(Toast) 메시지 발송 설정.
 * <p>
 * application.yml 의 <code>app.adapter.toast.*</code> 로 주입. 운영 활성화 시 키를 채운다.
 * 키가 비어 있으면 어댑터가 fail-fast(IllegalStateException) 한다.
 */
@Data
@ConfigurationProperties(prefix = "app.adapter.toast")
public class ToastProperties {

    // ── SMS (api-sms.cloud.toast.com) ─────────────────────────────────
    /** SMS API 베이스 URL. */
    private String smsBaseUrl = "https://api-sms.cloud.toast.com";
    /** SMS 프로젝트 AppKey. */
    private String smsAppKey;
    /** SMS Secret Key (X-Secret-Key 헤더). */
    private String smsSecretKey;
    /** 사전 등록된 발신번호. */
    private String senderNo;

    // ── 카카오 알림톡 (kakaotalk-bizmessage.api.nhncloudservice.com) ────
    /** 알림톡 API 베이스 URL. */
    private String alimtalkBaseUrl = "https://kakaotalk-bizmessage.api.nhncloudservice.com";
    /** 알림톡 프로젝트 AppKey. */
    private String alimtalkAppKey;
    /** 알림톡 Secret Key. */
    private String alimtalkSecretKey;
    /** 카카오 비즈메시지 발신 프로필 SenderKey. */
    private String senderKey;
}
