#!/usr/bin/env bash
# send_otp_short.sh — Gửi OTP (output ngắn gọn)
# Usage: bash send_otp_short.sh
set -u

ENDPOINT="http://10.38.31.92:8004/api/v1/otp/send"
PARTNER_ID="3ED2E2550C574D4FE0636B1F260A1EAA"
ISDN_ENC="QKfsfcoXvWqw6P2P5jZozg=="
SMS_CLIENT_ID="265"
OTP_CONTENT="[PACK360] Ma OTP cua ban la #OTP_CODE#"
CLIENT_REQ_ID="$(date +%Y%m%d)_pack360_sendotp_$(date +%s)"

PAYLOAD="{\"isdn\":\"${ISDN_ENC}\",\"clientReqId\":\"${CLIENT_REQ_ID}\",\"smsClientId \":${SMS_CLIENT_ID},\"otpContent\":\"${OTP_CONTENT}\"}"

echo ">>> POST ${ENDPOINT} | clientReqId=${CLIENT_REQ_ID}"
RESP=$(curl -sS --max-time 30 --connect-timeout 5 --noproxy '*' \
    -w "\n__HTTP__:%{http_code}|TIME:%{time_total}s" \
    -X POST "${ENDPOINT}" \
    -H "Partner-Id: ${PARTNER_ID}" \
    -H "Content-Type: application/json" \
    -d "${PAYLOAD}" 2>&1)
CURL_EXIT=$?

BODY="${RESP%$'\n'__HTTP__:*}"
META="${RESP##*__HTTP__:}"
echo "<<< HTTP ${META} | curl_exit=${CURL_EXIT}"
if echo "${BODY}" | jq . >/dev/null 2>&1; then
    echo "${BODY}" | jq .
else
    echo "${BODY}"
fi
