[Java - Spring] 팝빌 문자 API 연동 가이드
[Java - Spring] 팝빌 문자 API 연동 가이드
안녕하세요. 고객의 가치를 연결하는 비즈니스 파트너 링크허브 입니다.
본 포스팅에서는 Java - Spring 개발환경에서 고객사들이 팝빌 문자 API SDK를 쉽고 빠르게 이용할 수 있도록, 예시를 이용하여 연동 설정 방법을 안내드리겠습니다. 먼저, Maven을 이용해 팝빌 SDK를 추가한 후 단문메시지 전송 (SendSMS) 함수를 구현하는 순서로 진행하겠습니다.
팝빌 SDK는 JDK V1.6 개발환경에 최적화 되어 있으며, API 호출과 응답의 메시지 인코딩은 "UTF-8 Character-Set"을 지원합니다.
"팝빌은 링크허브에서 자체 개발하고 직접 운영하는 문자 서비스 Brand Name 입니다."
아래 설명하는 예시는 [ JDK v1.6 | Tomcat v7 | STS v3.6.4 ] 기준으로 작성되어 있어, 이용 중이신 개발환경과 차이가 있을 수 있는 점 감안해 주시기 바랍니다.
1. Popbill SDK 추가
① Maven 업데이트를 위해 "pom.xml" 파일에 팝빌 SDK Dependency를 추가하고 메이븐 업데이트를 진행합니다.
kr.co.linkhub popbill-sdk 1. 20.0
② 문자 서비스 클래스를 빈으로 등록하기 위해 아래코드를 참조하여 "servlet-context.xml" 파일을 수정합니다.
TESTER
SwWxqU+0TErBXy/9TVjIPEnI0VTUMMSQZtJf3Ed8q3I=
true
true
▶ 링크허브에서 발급받은 고객사 인증정보로 링크아이디(LinkID)와 비밀키(SecretKey) 값을 변경하시기 바랍니다.
3. API 구현
① 단문메시지 전송 (SendSMS) 함수를 테스트하기 위해 TaskController.java 를 생성하고 GET Request URL 을 처리하는 코드를 추가합니다.
- 예제코드를 참조하여 @Controller 어노테이션 과 문자 서비스 빈 객체주입을 위한 @Autowired 어노테이션을 추가합니다.
SendSMS API 열기
SendSMS API 닫기 package kr.test.popbill;
import java.util.Date;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod;
import com.popbill.api.MessageService; import com.popbill.api.PopbillException;
@Controller public class TaskController {
// 팝빌 문자 서비스 빈 클래스 주입 @Autowired private MessageService messageService; @RequestMapping(value = "sendSMS", method = RequestMethod.GET) public String sendSMS(Model m) {
/* * SMS(단문)를 전송합니다. * - 메시지 내용이 90Byte 초과시 메시지 내용은 자동으로 제거됩니다. */
// 팝빌회원 사업자번호 String testCorpNum = "1234567890";
// 팝빌회원 아이디
String testUserID = "testkorea";
// 발신번호 String sender = "07043042991";
// 수신번호 String receiver = "010111222";
// 수신자명 String receiverName = "수신자명";
// 메시지 내용, 90byte 초과된 내용은 삭제되어 전송 String content = "문자메시지 내용";
// 예약전송일시, null 처리시 즉시전송 Date reserveDT = null;
// 광고문자 전송여부 Boolean adsYN = false;
// 전송요청번호 // 파트너가 전송 건에 대해 관리번호를 구성하여 관리하는 경우 사용. // 1~36자리로 구성. 영문, 숫자, 하이픈(-), 언더바(_)를 조합하여 팝빌 회원별로 중복되지 않도록 할당. String requestNum = null;
try { String receiptNum = messageService.sendSMS(testCorpNum, sender, receiver, receiverName, content, reserveDT, adsYN, testUserID, requestNum); m.addAttribute("ReceiptNum", receiptNum); } catch (PopbillException e) { m.addAttribute("Response", e); return "response"; } return "response"; } } SendSMS API 닫기
② API 호출결과 출력을 위해 "src/main/webapp/WEB-INF/views/response.jsp" 페이지를 추가합니다.
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
문자 Response 접수번호 (ReceiptNum) : ${ReceiptNum} Response.code : ${Response.code} Response.message : ${Response.message}
③ 단문메시지 전송함수 호출결과를 확인합니다.
예) 함수호출 성공처리 - 접수번호(receiptNum) 반환
예) 함수호출 실패처리 - 오류코드(-로 시작하는 8자리 숫자값), 오류메시지(사유에 대한 설명) 반환
문자 전송결과는 getMessages 함수 또는 팝빌 개발용(test.popbill.com) 사이트에서 확인할 수 있습니다.
[참고] 팝빌 연동 개발을 위한 테스트베드(개발용) 안내 - https://linkhub.tistory.com/91
팝빌에서 제공하는 다양한 API는 동일한 컨셉으로 개발되어 있어, 하나의 서비스를 이용한 경험이 있으면 다른 서비스들도 유사한 방법으로 빠르게 연동이 가능하니 많은 이용 부탁드립니다.
지금까지 JAVA - Spring 개발환경에서 문자 API를 연동하는 방법에 대해 안내해 드렸는데, 내용에 대한 추가적인 문의가 있으면 기술지원센터로 편하게 연락주시기 바랍니다.
고객사의 편의를 위하여 이메일, 전화 등 다양한 채널을 열어놓고 있으니 언제든지 연락 주시기 바랍니다.
기술지원센터 / T. 1600-9854 / E. code@linkhub.co.kr
from http://linkhub.tistory.com/202 by ccl(S) rewrite - 2020-03-06 11:20:56
댓글
댓글 쓰기