서버를 보유중이신가요?
Agent를 설치하고 실행하면 자동생성되는 테이블에 데이터만 삽입하면 자동발송되고 결과도 수신됩니다.
다양한 언어와 환경에 맞게 SMS, LMS, MMS 서비스를 쉽고 빠르게 연동할 수 있습니다.
Agent를 설치하고 실행하면 자동생성되는 테이블에 데이터만 삽입하면 자동발송되고 결과도 수신됩니다.
Agent 설치가 어렵다면 홈페이지에서 소켓연동으로 간편하게 연동하세요. (SMS 전용)
배포해드리는 DLL을 프로젝트에 참조하여 문자연동이 가능합니다. (SMS 전용)
연동방식을 선택하면 주요 특징, 처리 흐름, 환경별 샘플과 필요한 파일을 한곳에서 확인할 수 있습니다.
발송 데이터를 DB에 삽입하면 XDB Agent가 데이터를 조회하여 Gateway로 자동전송하고, 처리 결과를 다시 DB에 업데이트해줍니다.
설치 안내 또는 DB 종류를 선택하여 예문을 확인하세요.
-- 각 컬럼에 대한 설명은 XDB 매뉴얼을 확인하세요.
/* 단문 -- 즉시전송 (REQ_DATE : 현재시간, MSG_TYPE : 4, SMS_TXT : 필수) */
INSERT INTO MSG_DATA(MSG_SEQ, CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(MSG_DATA_SEQ.NEXTVAL, 0, SYSDATE, '수신번호', '발신번호', 'Test SMS입니다', 4);
/* 단문 -- 예약전송 (REQ_DATE : 미래시간) */
INSERT INTO MSG_DATA(MSG_SEQ, CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(MSG_DATA_SEQ.NEXTVAL, 0, '2029-12-31 10:00:00', '수신번호', '발신번호', '예약 SMS입니다', 4);
/* 장문 (FILE_CNT : 0, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(CONT_SEQ, FILE_CNT, MMS_SUBJECT, MMS_BODY)VALUES(MMS_CONTENTS_INFO_SEQ.NEXTVAL, 0, 'LMS 제목' , 'LMS 내용');
INSERT INTO MSG_DATA(MSG_SEQ, CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(MSG_DATA_SEQ.NEXTVAL, 0, SYSDATE, '수신번호', '발신번호', '', 6, MMS_CONTENTS_INFO_SEQ.CURRVAL);
/* 포토 -- 이미지만 (FILE_CNT = 1, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(CONT_SEQ, FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(MMS_CONTENTS_INFO_SEQ.NEXTVAL, 1, 'MMS 제목' , '', 'IMG', 'C:/XDB2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(MSG_SEQ, CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(MSG_DATA_SEQ.NEXTVAL, 0, SYSDATE, '수신번호', '발신번호', '', 6, MMS_CONTENTS_INFO_SEQ.CURRVAL);
/* 포토 -- 텍스트+이미지 (FILE_CNT = 2, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(CONT_SEQ, FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(MMS_CONTENTS_INFO_SEQ.NEXTVAL, 2, 'MMS 제목' , 'MMS 내용', 'IMG', 'C:/XDB2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(MSG_SEQ, CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(MSG_DATA_SEQ.NEXTVAL, 0, SYSDATE, '수신번호', '발신번호', '', 6, MMS_CONTENTS_INFO_SEQ.CURRVAL);
-- 각 컬럼에 대한 설명은 XDB 매뉴얼을 확인하세요.
/* 단문 -- 즉시전송 (REQ_DATE : 현재시간, MSG_TYPE : 4, SMS_TXT : 필수) */
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(0, GETDATE(), '수신번호', '발신번호', 'Test SMS입니다', 4);
/* 단문 -- 예약전송 (REQ_DATE : 미래시간) */
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(0, '2029-12-31 10:00:00', '수신번호', '발신번호', '예약 SMS입니다', 4);
/* 장문 (FILE_CNT : 0, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY)VALUES(0, 'LMS 제목' , 'LMS 내용');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, GETDATE(), '수신번호', '발신번호', '', 6, @@IDENTITY);
/* 포토 -- 이미지만 (FILE_CNT = 1, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(1, 'MMS 제목' , '', 'IMG', 'C:/XDB2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, GETDATE(), '수신번호', '발신번호', '', 6, @@IDENTITY);
/* 포토 -- 텍스트+이미지 (FILE_CNT = 2, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(2, 'MMS 제목' , 'MMS 내용', 'IMG', 'C:/XDB2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, GETDATE(), '수신번호', '발신번호', '', 6, @@IDENTITY);
-- 각 컬럼에 대한 설명은 XDB 매뉴얼을 확인하세요.
/* 단문 -- 즉시전송 (REQ_DATE : 현재시간, MSG_TYPE : 4, SMS_TXT : 필수) */
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(0, NOW(), '수신번호', '발신번호', 'Test SMS입니다', 4);
/* 단문 -- 예약전송 (REQ_DATE : 미래시간) */
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE)
VALUES(0, '2029-12-31 10:00:00', '수신번호', '발신번호', '예약 SMS입니다', 4);
/* 장문 (FILE_CNT : 0, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY)VALUES(0, 'LMS 제목' , 'LMS 내용');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, NOW(), '수신번호', '발신번호', '', 6, LAST_INSERT_ID());
/* 포토 -- 이미지만 (FILE_CNT = 1, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(1, 'MMS 제목' , '', 'IMG', '/home/xonda/xdb2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, NOW(), '수신번호', '발신번호', '', 6, LAST_INSERT_ID());
/* 포토 -- 텍스트+이미지 (FILE_CNT = 2, MSG_TYPE : 6, CONT_SEQ : 필수) */
INSERT INTO MMS_CONTENTS_INFO(FILE_CNT, MMS_SUBJECT, MMS_BODY, FILE_TYPE1, FILE_NAME1, SERVICE_DEP1 )VALUES(2, 'MMS 제목' , 'MMS 내용', 'IMG', '/home/xonda/xdb2/attach/01.jpg', 'ALL');
INSERT INTO MSG_DATA(CUR_STATE, REQ_DATE, CALL_TO, CALL_FROM, SMS_TXT, MSG_TYPE, CONT_SEQ)
VALUES(0, NOW(), '수신번호', '발신번호', '', 6, LAST_INSERT_ID());
웹사이트에서 쏜다넷 Gateway로 직접 소켓통신하여 단문문자를 전송하는 간단한 연동방식입니다.
개발언어를 선택하여 소켓연동 예시를 확인하세요.
<%
Class XONDASMS
...
Private Sub Class_Initialize()
sID = "" ' ***** 쏜다넷연동아이디 (10자리 이하) *****
sPWD = "" ' ***** 쏜다넷연동패스워드 (10자리 이하) *****
...
End Sub
...
End Class
%>
<% Option Explicit %>
<!--#include file="class.sms.asp"--%>
<%
Dim receiver, callback, sms_msg, err_msg, result
'--------------------------------------------------------------------------------------------------
' 수신번호(휴대폰번호) -- 복수일 경우 콤마로 구분 (ex: 01100000000,01000000000)
'--------------------------------------------------------------------------------------------------
receiver = ""
'--------------------------------------------------------------------------------------------------
' 발신번호(회신번호) -- 사전등록필수 (ex: 021234567)
'--------------------------------------------------------------------------------------------------
callback = ""
'--------------------------------------------------------------------------------------------------
' 전송내용(EUC-KR 기준 최대 80바이트)
'--------------------------------------------------------------------------------------------------
sms_msg = ""
'--------------------------------------------------------------------------------------------------
' SMS전송 (수신번호, 발신번호, 전송내용, 오류내용) -- 성공건수(0이상) 또는 오류번호(음수)를 반환함
'--------------------------------------------------------------------------------------------------
result = Func_SendSMS(receiver, callback, sms_msg, err_msg)
If result < 0 Then
Response.Write "접수 실패 : " & err_msg
Else
Response.Write "접수 성공 (" & result & "건)"
' 정상 처리된 경우 err_msg 에는 서버 접수에 실패한 번호가 반환됩니다.
If err_msg <> "" Then
Response.Write ", 실패 번호 (" & err_msg & ")"
End IF
End If
%>
<?php
class XONDASMS {
var $ID;
var $PWD;
...
function __construct() {
$this->ID=""; // ***** 쏜다넷연동아이디 (10자리 이하) *****
$this->PWD=""; // ***** 쏜다넷연동패스워드 (10자리 이하) *****
...
}
}
?>
<?php
header("Content-Type: text/html; charset=UTF-8");
########## 클래스 참조 ##########
include "class.sms.php";
########## 내용 구성 ##########
//--------------------------------------------------------------------------------------------------
//수신번호(휴대폰번호) -- 복수일경우 콤마로 구분 (ex: 01100000000,01000000000)
//--------------------------------------------------------------------------------------------------
$receiver = "";
//--------------------------------------------------------------------------------------------------
//발신번호(회신번호) -- 사전등록필수 (ex: 021234567)
//--------------------------------------------------------------------------------------------------
$callback = "";
//--------------------------------------------------------------------------------------------------
//전송내용(단문) -- EUC-KR 기준 최대 80바이트
//--------------------------------------------------------------------------------------------------
$sms_msg = "";
//--------------------------------------------------------------------------------------------------
//SMS전송 (수신번호, 발신번호, 전송내용, 오류내용) -- 성공건수(0이상) 또는 오류번호(음수)를 반환함
//---------------------------------------------------------------------------------------------------
$result = sendSMS($receiver, $callback, $sms_msg, $err_msg);
if($result < 0){
echo "접수 실패 : ".$err_msg;
}else{
echo "접수 성공 (".$result."건)";
// $result가 0 이상이면 $err_msg는 서버 접수에 실패한 수신번호 목록을 반환합니다.
if($err_msg != ""){
echo ", 실패 번호 (".$err_msg.")";
}
}
?>
# 쏜다넷 소켓연동 계정 (10자리이하)
xonda.sms.id=
xonda.sms.password=
...
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="net.xonda.sms.XondaSms" %>
<%
request.setCharacterEncoding("UTF-8");
//--------------------------------------------------------------------------------------------------
//수신번호(휴대폰번호) -- 복수일경우 콤마로 구분 (ex: 01100000000,01000000000)
//--------------------------------------------------------------------------------------------------
String receiver = "";
//--------------------------------------------------------------------------------------------------
//발신번호(회신번호) -- 사전등록필수 (ex: 021234567)
//--------------------------------------------------------------------------------------------------
String callback = "";
//--------------------------------------------------------------------------------------------------
//전송내용(단문) -- EUC-KR 기준 최대 80바이트
//--------------------------------------------------------------------------------------------------
String sms_msg = "";
//--------------------------------------------------------------------------------------------------
//SMS전송 (수신번호, 발신번호, 전송내용)
// getResultCode() : 성공건수(0이상) 또는 오류번호(음수)를 반환함
//---------------------------------------------------------------------------------------------------
XondaSms sms = new XondaSms();
XondaSms.SendResult result = sms.sendSms(receiver, callback, sms_msg);
if (result.getResultCode() < 0) {
out.print("접수 실패: " + result.getErrorMessage());
} else {
out.print("접수 성공 (" + result.getResultCode() + "건)");
if (result.getFailedNumbers().length() > 0) {
out.print(", 접수 실패 (" + result.getFailedNumbers() +")");
}
}
%>
응용프로그램 프로젝트에서 배포 DLL을 참조하고 OPEN, SEND, CLOSE 역할의 함수를 호출하여 단문문자를 전송합니다.
개발환경에 맞는 매뉴얼을 다운받으신 후 이용안내에 따라 진행하세요.
// 실제 함수명과 인자는 배포 샘플을 확인하세요.
int result = XONDA_OPEN(accountId, accountPassword);
if (result == 0) {
XONDA_SEND("01012345678", "안내 문자입니다.");
}
XONDA_CLOSE();
' 실제 함수명과 인자는 배포 샘플을 확인하세요.
Dim result As Integer
result = XONDA_OPEN(accountId, accountPassword)
If result = 0 Then XONDA_SEND("01012345678", "안내 문자입니다.")
XONDA_CLOSE()
// 실제 함수명과 인자는 배포 샘플을 확인하세요.
HMODULE module = LoadLibrary(TEXT("xonda.dll"));
// OPEN, SEND, CLOSE 함수 주소를 확인한 뒤 순서대로 호출합니다.
FreeLibrary(module);
추가캐쉬 적립형 일반상품과 달리, 연동요금제는 선택한 상품에 따라 SMS·LMS·MMS 단가가 달라집니다.
(웹팩스,MO서비스 별도)
VAT 별도
| 구분 | 건수 | 단가 | 할인율 |
|---|---|---|---|
| 단문 | 2,800건 | 17.5원 | 30.0%↓ |
| 장문 | 1,088건 | 45.0원 | 35.7%↓ |
| 포토 | 196건 | 250.0원 | — |
충전캐쉬 53,900원
연동회원 전용 충전하기VAT 별도
| 구분 | 건수 | 단가 | 할인율 |
|---|---|---|---|
| 단문 | 6,000건 | 16.5원 | 34.0%↓ |
| 장문 | 2,250건 | 44.0원 | 37.1%↓ |
| 포토 | 404건 | 245.0원 | 2.0%↓ |
충전캐쉬 108,900원
연동회원 전용 충전하기VAT 별도
| 구분 | 건수 | 단가 | 할인율 |
|---|---|---|---|
| 단문 | 12,000건 | 15원 | 40.0%↓ |
| 장문 | 4,186건 | 43원 | 38.6%↓ |
| 포토 | 750건 | 240원 | 4.0%↓ |
충전캐쉬 198,000원
연동회원 전용 충전하기VAT 별도
| 구분 | 건수 | 단가 | 할인율 |
|---|---|---|---|
| 단문 | 50,000건 | 14원 | 44%↓ |
| 장문 | 16,666건 | 42원 | 40%↓ |
| 포토 | 3,043건 | 230원 | 8%↓ |
충전캐쉬 770,000원
연동회원 전용 충전하기업무 환경에 맞는 연동 방식을 확인하고 테스트 발송부터 시작할 수 있습니다.
(주)쏜다넷 | 송승한 | 사업자등록번호 101-81-64285
(특)부가통신사업자등록번호 제 3-01-15-0022호
정보보호 최고책임자(CISO) | 송승한
대표 02-2646-7280 | FAX 0503-8379-0415 | helpdesk@xonda.net
(08389) 서울시 구로구 디지털로26길 5 에이스하이엔드타워1차 614호
Copyright XONDA.NET Co.,Ltd. All rights reserved.
전송자격인증제