본 문서는 Push 5.1 UPMC의 SMS 사용자 쿼리 설정 방법에 대해 가이드 합니다.
해당 기능은 아래의 빌드 버전부터 적용됩니다.
Push 서비스에서 기본 SMS 테이블(T_PUSH_SMS)의 구조를 동일하게 사용하고 있습니다.
기본 SMS 테이블을 참고하시어, 필요한 형태의 테이블 생성 후 사용자 쿼리를 적용할 수 있습니다.
사용자 지정 SMS 테이블의 컬럼 타입은 T_PUSH_SMS 테이블의 동일한 속성으로 생성
해야 합니다.
초기 설정 값은 주석 처리가 되어 있으며, 필요한 쿼리만 활성화 하여 사용할 수 있습니다. 예를 들어 SMS 성공 건만 수집 또는 SMS 실패 건만 수집과 같은 형태로 사용이 가능합니다.
쿼리 종류(INSERT, UPDATE, DELETE) 및 쿼리 ID(파라미터 종류 포함)는 변경할 수 없습니다.
<insert id="inSmsFromSuccPush" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushSuccBean">
<![CDATA[
insert into T_PUSH_SMS_CUSTOM(APPID,CUID,SEQNO,TITLE,SUB_TITLE,PNSID,PSID,SMS_READ_WAIT_MINUTE,PUSH_STATUS,ERRCODE,REGDATE,EXPIREDATE
,SENDERCODE,SEND_TYPE,MSG_TYPE,TRAN_TYPE,CUST_KEY,CUST_VAR1,CUST_VAR2,CUST_VAR3)
values(#{APP_ID},#{CUID},#{SEQNO},#{TITLE},#{SUB_TITLE},#{PNSID},#{PSID},#{SMS_READ_WAIT_MINUTE},#{PUSH_STATUS},#{ERRCODE},SYSDATE,SYSDATE+INTERVAL '${SMS_READ_WAIT_MINUTE}' MINUTE
,#{SENDERCODE},#{SEND_TYPE},#{MSG_TYPE},#{TRAN_TYPE},#{CUST_KEY},#{CUST_VAR1},#{CUST_VAR2},#{CUST_VAR3})
]]>
</insert>
<insert id="inSmsFromFailPush" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushFailBean">
<![CDATA[
insert into T_PUSH_SMS_CUSTOM(APPID,CUID,SEQNO,TITLE,SUB_TITLE,PNSID,PSID,SMS_READ_WAIT_MINUTE,PUSH_STATUS,ERRCODE,REGDATE,EXPIREDATE
,SENDERCODE,SEND_TYPE,MSG_TYPE,TRAN_TYPE,CUST_KEY,CUST_VAR1,CUST_VAR2,CUST_VAR3)
values(#{APP_ID},#{CUID},#{SEQNO},#{TITLE},#{SUB_TITLE},#{PNSID},#{PSID},#{SMS_READ_WAIT_MINUTE},#{PUSH_STATUS},#{ERRCODE},SYSDATE,SYSDATE
,#{SENDERCODE},#{SEND_TYPE},#{MSG_TYPE},#{TRAN_TYPE},#{CUST_KEY},#{CUST_VAR1},#{CUST_VAR2},#{CUST_VAR3})
]]>
</insert>
<update id="upSmsFromFailPush" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushFailBean">
update T_PUSH_SMS_CUSTOM set ERRCODE=#{ERRCODE},EXPIREDATE=SYSDATE,PUSH_STATUS=#{PUSH_STATUS} where APPID=#{APP_ID} and CUID=#{CUID} and SEQNO=#{SEQNO}
</update>
<delete id="delSms" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushRevBean">
<![CDATA[
delete from T_PUSH_SMS_CUSTOM where APPID=#{APP_ID} and CUID=#{CUID} and SEQNO=#{SEQNO}
]]>
</delete>
<insert id="inSmsFromSuccPushBatch" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushSuccBean">
<![CDATA[
insert into T_PUSH_SMS_BATCH_CUSTOM(APPID,CUID,SEQNO,TITLE,SUB_TITLE,PNSID,PSID,SMS_READ_WAIT_MINUTE,PUSH_STATUS,ERRCODE,REGDATE,EXPIREDATE
,SENDERCODE,SEND_TYPE,MSG_TYPE,TRAN_TYPE,CUST_KEY,CUST_VAR1,CUST_VAR2,CUST_VAR3)
values(#{APP_ID},#{CUID},#{SEQNO},#{TITLE},#{SUB_TITLE},#{PNSID},#{PSID},#{SMS_READ_WAIT_MINUTE},#{PUSH_STATUS},#{ERRCODE},SYSDATE,SYSDATE+INTERVAL '${SMS_READ_WAIT_MINUTE}' MINUTE
,#{SENDERCODE},#{SEND_TYPE},#{MSG_TYPE},#{TRAN_TYPE},#{CUST_KEY},#{CUST_VAR1},#{CUST_VAR2},#{CUST_VAR3})
]]>
</insert>
<insert id="inSmsFromFailPushBatch" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushFailBean">
<![CDATA[
insert into T_PUSH_SMS_BATCH_CUSTOM(APPID,CUID,SEQNO,TITLE,SUB_TITLE,PNSID,PSID,SMS_READ_WAIT_MINUTE,PUSH_STATUS,ERRCODE,REGDATE,EXPIREDATE
,SENDERCODE,SEND_TYPE,MSG_TYPE,TRAN_TYPE,CUST_KEY,CUST_VAR1,CUST_VAR2,CUST_VAR3)
values(#{APP_ID},#{CUID},#{SEQNO},#{TITLE},#{SUB_TITLE},#{PNSID},#{PSID},#{SMS_READ_WAIT_MINUTE},#{PUSH_STATUS},#{ERRCODE},SYSDATE,SYSDATE
,#{SENDERCODE},#{SEND_TYPE},#{MSG_TYPE},#{TRAN_TYPE},#{CUST_KEY},#{CUST_VAR1},#{CUST_VAR2},#{CUST_VAR3})
]]>
</insert>
<update id="upSmsFromFailPushBatch" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushFailBean">
update T_PUSH_SMS_BATCH_CUSTOM set ERRCODE=#{ERRCODE},EXPIREDATE=SYSDATE,PUSH_STATUS=#{PUSH_STATUS} where APPID=#{APP_ID} and CUID=#{CUID} and SEQNO=#{SEQNO}
</update>
<delete id="delSmsBatch" parameterType="kr.msp.push.receiver.daemon.sms.SmsPushRevBean">
<![CDATA[
delete from T_PUSH_SMS_BATCH_CUSTOM where APPID=#{APP_ID} and CUID=#{CUID} and SEQNO=#{SEQNO}
]]>
</delete>