[Spring Boot] 문자 보내기 구현

김우경·2021년 2월 22일
4

"상담 예약하기"를 눌렀을때 상담 예약과 동시에 예약에 대한 정보를 문자로 발송하는 기능을 구현하려고 한다.

사용한 문자 전송 서비스

coolsms를 사용했다. 구글링했을때 가장 많이 사용하는 서비스같아서,, 오류발생시에도 빠르게 해결 방법을 찾을 수 있을 것같아서 결정함

SDK 적용

Rest API, SDK, ClassicAPI 총 세가지로 문자전송 기능을 제공하는데, 스프링부트에 연동해야 하므로 SDK를 사용했다.

gradle을 사용중이기 때문에 build.gradle의 depedency에 아래와 같이 추가한다.

compile group: 'net.nurigo', name: 'javaSDK', version: '2.2'


코끼리 리프레쉬하는거 잊지 말기,,

coolsms 세팅하기

API key 발급하기

개발/연동 > API key 관리 > New 클릭!

발신 번호 등록하기

메세지 전송 > 문자보내기 > 발신번호 선택 > 등록 클릭!

문자 전송 테스트

잘 작동하는지 간단하게 테스트를 해보자.
MessageTest 클래스를 만들어줬음

@Test
    public void sendSms() {

        String api_key = "발급받은 api_key";
        String api_secret = "발급받은 api_secret";
        Message coolsms = new Message(api_key, api_secret);
        HashMap<String, String> params = new HashMap<String, String>();

        params.put("to", "등록한 발신자 번호");
        params.put("from", "수신자 번호");
        params.put("type", "SMS");
        params.put("text", "문자 내용");
        params.put("app_version", "test app 1.2");

        try {
            JSONObject obj = (JSONObject) coolsms.send(params);
            System.out.println(obj.toString());
        } catch (CoolsmsException e) {
            System.out.println(e.getMessage());
            System.out.println(e.getCode());
        }
    }


이-지 하네요잉 ,,

참고

https://seonhyungjo.github.io/Spring-SMS/
https://jinseongsoft.tistory.com/185

profile
Hongik CE

2개의 댓글

comment-user-thumbnail
2021년 3월 25일

안녕하세요 포스팅하신 글 잘 읽었습니다. 올려주신 방법대로 개인 프로젝트에 적용해봤는데, "SignatureDoesNotMatch"라는 에러코드가 뜨더라구요 저는.. 혹시 API KEY랑 API SECRET 생성하실 때, 별도로 Signature 관련해서는 따로 생성하신게 없었나요?

1개의 답글