optional은 callback_num만 다룹니다.
submit_sm은 0x00000004값으로 되어있습니다.
받는 값은 0x80000004입니다.
일반적으로 정의된 값
"" : (NULL) 기본값
"CMT" : 셀룰러 메시징
"CPT" : 셀룰러 페이징
"VMN" : 음성 메일 알림
"VMA" : 음성 메일 알림
"WAP" : 무선 애플리케이션 프로토콜
"USSD" : 구조화되지 않은 부가 서비스 데이터
다른 모든 값은 이동통신사에 따라 다르며 SMSC 서비스 공급자와 ESME 애플리케이션 간의 상호 합의에 의해 정의됩니다.
submit_sm, submit_multi 및 data_sm 에서 다음과 같이 인코딩됩니다 .
(ESME -> SMSC) PDU:
Messaging Mode (bits 1-0)
xxxxxx00 : default smsc 모드 (store and forward)
xxxxxx01 : datagram 모드
xxxxxx10 : Forward 모드 (tractaction 모드)
xxxxxx11 : Store and forward 모드 (smsc가 store and forward방식이 아닐 경우 사용)
Message Type (bits 5-2)
xx0000xx : 기본 메시지 타입
xx0010xx : short 메시지에 ESME delivery 승인이 포함되어있음
xx0100xx : short 메시지에 ESME 메뉴얼/유저 승인이 포함되어있음
GSM Network Specific Features (bits 7-6)
00xxxxxx : 특정 기능을 선택하지 않음
01xxxxxx : UDHI 표시기 (MT 단문 메시지에만 해당)
10xxxxxx : 응답 경로 설정 (GSM 네트워크에만 해당)
11xxxxxx : UDHI 및 회신 경로설정 (GSM 네트워크에만 해당)
GSM
GSM 03.40에 따라 설정 (39page0x00)
ANSI-136 (TDMA)
ANSI-136 모바일 발신 메시지의 경우 SMSC는 이 값을 NULL로 설정해야 합니다.
모바일 종료 메시지의 경우 이 필드는 사용되지 않으므로 SMSC에서 무시됩니다.
IS-95 (CDMA)
IS-95 모바일 발신 메시지의 경우 SMSC는 이 값을 NULL로 설정해야 합니다.
모바일 종료 메시지의 경우 이 필드는 사용되지 않으므로 SMSC에서 무시됩니다.
우선순위 단계
0(낮음) < 1 < 2 < 3(높음)
3보다 큰 값은 예약됨
Time Format
“YYMMDDhhmmsstnnp" 형식으로
‘YY’ : last two digits of the year (00-99)
‘MM’ : month (01-12)
‘DD’ : day (01-31)
‘hh’ : hour (00-23)
‘mm’ : minute (00-59)
‘ss’ : second (00-59)
‘t’ : tenths of second (0-9)
‘nn’ : Time difference in quarter hours between local time (as expressed in the first 13 octets) and UTC (Universal Time Constant) time (00-48).
‘p’ -
“+” : Local time is in quarter hours advanced in relation
to UTC time.
“-” : Local time is in quarter hours retarded in relation
to UTC time.
“R” : Local time is relative to the current SMSC time
참고 : SMSC에서 응답을 보고하는 경우 SMSC의 현지 시간이 제공되며 형식은 위와 동일한 정의로
"YYMMDDhhmmss"입니다
submit_sm, submit_multi 및 data_sm 에서 다음과 같이 인코딩됩니다 .
(ESME -> SMSC) PDU:
SMSC Delivery Receipt (bits 1 and 0)
xxxxxx00 : SMSC delivery receipt 요청되지 않음 (default)
xxxxxx01 : 최종 배송결과가 성공 또는 실패인 경우 결과서 요청
xxxxxx10 : 최종 배송 결과가 실패인경우 결과서 요청
xxxxxx11 : 예약됨
SME originated Acknowledgement (bits 3 and 2)
xxxx00xx : SME 확인 요청하지 않음(default)
xxxx01xx : SME 배송 확인 요청
xxxx10xx : SME manual/user 승인 요청
xxxx11xx : 배송과 manual/user 확인 둘다 요청
Intermediate Notification (bit 5)
xxx0xxxx : 중간 알림 요청하지 않음
xxx1xxxx : 중간 알림 요청
참고 : 배달 확인은 메시지가 취소 또는 배달 불가 등 배달되지 않은 최종 상태에 도달한 경우에만 반환됩니다.
중간 알림 기능에 대한 지원은 SMSC 구현에 따라 다르며 SMPP 프로토콜 사양의 범위를 벗어납니다.
0 : 교체하지 않습니다. (default)
1 : 교체합니다.
2~155 : 예약됨
SMSC 메시징 기능을 사용하는 ESME 응용프로그램은 replace 값을 1로 주어야 합니다. 그래야만 SME당 최대 하나의 메시지 보류를 보장합니다.
note
a. 이러한 코딩 방식은 GSM, TDMA 및 CDMA에 공통입니다. SMPP 프로토콜을 사용하면 ESME 애플리케이션이 세 가지 기술 모두에 대해 동일한 DCS 값(즉, GSM 03.38 값)을 사용할 수 있습니다.
b. Data Coding Scheme이 TDMA 및/또는 CDMA에 대해 정의되었지만 GSM에 대해 정의되지 않은 경우 SMPP는 GSM 03.38 예약 값을 사용합니다.
d. data_coding 매개변수는 문자 코드 설정만 지정하도록 진화합니다. 따라서 GSM MWI 제어를 지정하는 권장 방법은 선택적 매개변수 _ms_msg_wait_facilities 및 ms_validity에서 관련 설정을 지정하는 것입니다.
e. data_coding 매개변수는 문자 코드 설정만 지정하도록 진화합니다. 따라서 GSM 메시지 클래스 제어를 지정하는 권장 방법은 선택적 매개변수 dest_addr_subunit에 관련 설정을 지정하는 것입니다.
0 : 예약됨
1 ~ 254 : 사용 가능
255 : 예약됨
0 : short message filed에 사용자 데이터가 없음
1 ~ 254 : 허용됨
255 : 허용되지 않음
submit_sm은 0x00000004값으로 되어있습니다.
받는 값은 0x80000004입니다.
참고
command_status값이 0이 아닌 값이면 body는 오지않습니다.
header의 16바이트만 온것을 알 수 있습니다.
status에 c2는 invalid length입니다.
단문 메시지와 관련된 콜백 번호입니다.
이 매개변수는 여러 콜백 주소에 대해 여러 번 포함될 수 있습니다.
Field | Size octets | Type | Description |
---|---|---|---|
Parameter Tag | 2 | Integer | |
Length | 2 | Integer | value의 길이 |
Value | Var 4 - 19 | Octet String | 아래에서 자세히 설명 |
Value처리 방법
0000000D (octet 1) : 콜백 숫자 인코딩 방식 (0: DTMF 숫자, 1: ASCII 숫자)
00000TTT (octet 2) : TON
0000NNNN (octet 3) : NPI
XXXXXXXX (octet 4) : 이후부턴 콜백 할 숫자 번호 기입
:
:
XXXXXXXX (octet N)