#!/usr/bin/env bash
# verify_otp_short.sh — Verify OTP (output ngắn gọn)
# Usage: bash verify_otp_short.sh <OTP_CODE>
set -u

if [ "$#" -lt 1 ] || [ -z "${1:-}" ]; then
    echo "ERROR: thiếu OTP_CODE. Usage: bash verify_otp_short.sh <OTP_CODE>" >&2
    exit 1
fi

ENDPOINT="http://10.38.31.92:8004/api/v1/otp/verify"
PARTNER_ID="3ED2E2550C574D4FE0636B1F260A1EAA"
ISDN_ENC="QKfsfcoXvWqw6P2P5jZozg=="
OTP_CODE="$1"
CLIENT_REQ_ID="$(date +%Y%m%d)_pack360_verifyotp_$(date +%s)"

PAYLOAD="{\"isdn\":\"${ISDN_ENC}\",\"clientReqId\":\"${CLIENT_REQ_ID}\",\"isdnEncrypt\":1,\"otp\":\"${OTP_CODE}\"}"

echo ">>> POST ${ENDPOINT} | otp=${OTP_CODE} | 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
