이름하야 네이버 SNES
네이버 클라우드서비스에서 내놓은 문자발송 솔루션인데요. 자피어 등으로만 가능하던 문자나 알림톡을 드디어 오로지 발송비용만 내고 사용가능하게 되었습니다.
사실 해외에서는 자바스크립트로 문자를 쉽게 보낼 수 있는 환경이 조성되어 있지만…
국내는 이상하게 문자발송 = 보안토큰 획득 = 서버간 통신 필수
이러다보니 파이썬이나 하다못해 홈페이지를 얼추 알아야만 가능했더랬습니다.
하지만 이제는 네이버에서 정해놓은 규칙대로 요청만 하면 뙇하고 문자를 보내주는 세상이 펼쳐집니다.
네이버 클라우드 플랫폼 가입은 필수.
우선 네이버 클라우드 플랫폼 가입이 필수적인데요. 결제 수단 등록시 3개월 동안 무료로 쓸 수 있는 10만원 크레딧을 제공하기 때문에 문자 발송을 위한 네이버 SENS 사용에 더욱 날개를 달아줄 예정입니다 🙂
구분 | 과금구간 | 과금기준 | 요금 |
---|---|---|---|
PUSH | 2,000건 이하 | 건 당 | 무료 |
PUSH | 2,000건 초과 | 건 당 | 0.02 원 |
SMS | 50건 이하 | 건 당 | 무료 |
SMS | 50건 초과 | 건 당 | 9 원 |
LMS | 10건 이하 | 건 당 | 무료 |
LMS | 10건 초과 | 건 당 | 30 원 |
MMS | 전 구간 동일 | 건 당 | 100 원 |
알림톡 | 전 구간 동일 | 건 당 | 7.5 원 |
친구톡 – 텍스트형 | 전 구간 동일 | 건 당 | 14.5 원 |
친구톡 – 이미지형 | 전 구간 동일 | 건 당 | 23 원 |
친구톡 – 와이드형 | 전 구간 동일 | 건 당 | 26.5 원 |
080 수신 거부 서비스 사용료 | 전 구간 동일 | 월 | 29,000 원 |
080 수신 거부 서비스 통화료 | 1,000건 이하 | 건 당 | 무료 |
080 수신 거부 서비스 통화료 | 1,000건 초과 | 건 당 | 25 원 |
요금 구성도 이정도면 무척 저렴한 편이구요. 알림톡은 최저인 알리고가 6.5원이지만 웹토큰 방식으로 문자 발송 전 인증토큰 획득을 해야하는 불편함이 있습니다. 이게 말로 하면 쉽지… 코드 들어가면 어후……
이제 여러분들이 싫어할 API 문서를 볼 차례.
네이버 SENS 자체는 참 좋은데… 언제나 그렇듯이 네이버의 개발문서는 불친절 합니다.
사용 언어별 예제정도는 던져주고 가야지 무슨 덩그러니 요청 헤더 내용만 달랑 있지요
이런 헤더 요청사항 하나랑
POST https://sens.apigw.ntruss.com/sms/v2/services/{serviceId}/messages
Content-Type: application/json; charset=utf-8
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
이것만 보고 API를 구현해야 합니다! 초보자들에게 너무나도 극한의 작업이 예상되는 부분이죠?
초반에 말씀드렸던 토큰을 획득하지 않고 바로 서버로 요청을 보낸다는 말이 여기에 함축이 되어 있습니다.
네이버는 Signature 방식을 좋아하는데요. 말그대로 정해진 규칙에 맞는 서명을 생성해서 보내주는 겁니다. 그러면 서버에서는 올바른 서명 인지, 등록된 API인지를 확인한 후 요청받은 내용에 맞게 문자를 발송해주는 구조입니다.
코드 타이핑 없이 문자 발송 코드 복붙 해서 활용하기.
위 링크를 통해 소스코드를 복붙하신 후 사용해 주세요.
문제는 역시 이런 시그니쳐 생성이 초보자들에겐 통곡의 벽과도 같다는 점이죠. 특히 앱스크립트에서는 SHA 언어 처리 방식도 조금씩 다르기 때문에... (저도 여기서 거의 3시간을 버린 것 같습니다..)
어쨋든 우린 편하게 사용할 수 있으니까요. 바로 복붙해서 사용하실 코드에 대해 설명드리도록 하겠습니다.
각각 서비스 아이디는
var serviceId = ''
var accessKey = ''
var secretKey = ''
계정 생성 최초 SMS 프로젝트를 생성하면 주는 ncp:sms:kr로 시작하는 값이구요.
나머지 인증키들은
마이페이지 > 계정 관리 > 인증키 관리로 들어가면 총 2가지를 받아서 '' 사이에 채워넣어주셔야 합니다.
발송전화번호와 수신전화번호 모두 -가 없는 01012341234형식으로 만들어 줍시다.
메시지까지 입력을 다 해준뒤~
SendMsg 함수를 실행시켜 주면 끝! 참~ 쉽죠? 카카오톡 알림톡도 비슷하게 진행가능하다는거!!
제작 의뢰도 언제나 환영합니다 :)
https://smartstore.naver.com/zeey/products/8074826514
최근 프로젝트 진행 상황.
- 해외 송장 배송일자에 따른 자동 문자 발송 (23.1 / 진행중)
- 휴가 제출시 알림톡 발송 (22.12)