You are on page 1of 78

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN
*
****
*

BÁO CÁO THỰC TẬP
Đề tài: Tìm hiểu giao thức SMPP

Thầy hướng dẫn: Đặng Văn Chuyết
Sinh viên: Nguyễn Ngọc Bảo
Lớp: KS2 K16

Hà Nội - 2004

1

2

MỤC LỤC
CÁC TỪ VIẾT TẮT.................................................................................................................8
PHẦN I. TỔNG QUAN VỀ SMPP..........................................................................................9
1.1. Định nghĩa giao thức SMPP........................................................................................10
1.2. Mô tả SMPP Session....................................................................................................10
1.2.1. Lệnh Outbind..........................................................................................................11
1.3. Các PDU trong SMPP.................................................................................................12
1.4. Kết kết nối tại tầng mạng của SMPP.........................................................................13
1.5. Các tin được gửi từ ESME tới SMSC........................................................................14
1.5.1. Các tin được phản hồi từ SMSC về ESME.............................................................14
1.5.2. Sơ đồ tuần tự của SMPP session - ESME Transmitter...........................................14
1.6. Các tin được gửi từ SMSC tới ESME........................................................................15
1.6.1. Tin phản hồi từ ESME về SMSC............................................................................15
1.6.2. Sơ đồ tuần tự của SMPP session - ESME Receiver................................................15
1.7. Trao đổi tin kép giữa SMSC và ESME......................................................................16
1.7.1. Typical SMPP session sequence - ESME Transceiver...........................................16
1.8. Bắt lỗi............................................................................................................................17
1.9. SMPP Timer.................................................................................................................17
1.10. Các chế độ của tin......................................................................................................18
1.10.1. Chế độ Store and Forward....................................................................................18
1.10.2. Chế độ Datagram..................................................................................................19
1.10.3. Chế độ Transaction...............................................................................................20
1.11. Các loại tin..................................................................................................................20
1.11.1. SMSC Delivery Receipt........................................................................................21
1.11.2. Intermediate Notification......................................................................................21
1.11.3. SME Delivery Acknowledgement........................................................................21
1.11.4. SME Manual/User Acknowledgement.................................................................21
1.11.5. Conversation Abort...............................................................................................21
PHẦN II. ĐỊNH DẠNG VÀ KIỂU PDU TRONG SMPP...................................................22
2.1. Các định nghĩa về kiểu................................................................................................22
2.1.1. Kích thước của các trường tham số.........................................................................22
2.2. Đinh dạng chung của PDU..........................................................................................22
2.2.2. Chiều dài của PDU..................................................................................................23
2.2.3. Kích thước của tin và phần mở rộng của tin...........................................................24
3

..1...... Cú pháp “SUBMIT_SM”.................1................2.. Lệnh “OUTBIND”................................................................31 3.......24 2..........................2......31 3........1............2............6...................2.......................42 3............... Cú pháp “DELIVER_SM”.. Quá trình thay thế tin trong “SUBMIT_SM”..... Định dạng tham số tùy chọn................8..... Lệnh “SUBMIT_MULTI”............................................................................................................2...8................2.........7..................................31 3..................... Cú pháp “DATA_SM_RESP”............................1.....2....... Các tham số tùy chọn..7.........................1................................................5..... Lệnh “UNBIND”.................1................... Khả năng tương thích của các phiên bản cũ của giao thức SMPP. Định nghĩa danh sách gửi tin......................1....3.. Cú pháp “BIND_RECEIVER_RESP”.4...............1.............7....6...............3.....4........................................................................................ Cú pháp “BIND_TRANSCEIVER”........................................................ Định nghĩa địa chỉ đích dest_address....................................1..5......4....................................30 3..........1........... Cú pháp “BIND_TRANSMITTER”............................. Lệnh “SUBMIT_SM”................................................................42 3......................................5.........................26 3....... Cú pháp “UNBIND”.....................2................ Lệnh “DELIVER_SM”.............5..........7....................................30 3........ Cú pháp “UNBIND_RESP”..5..........4......................1.....................................................................................................4...........................34 3.31 3...........................38 3.....6....... Lệnh “BIND”.......1....................................... Khả năng tương thích của các phiên bản mới của giao thức SMPP........................ Cú pháp “OUTBIND”.........................................29 3.......................... PDU của “GENERIC_NACK”........................................................2.....................5...................................6......................25 PHẦN III.4.38 3.................. Cú pháp “DELIVER_SM_RESP”..............1...................44 3......1...........................35 3...............................2...................................1................. Cú pháp “BIND_TRANSCEIVER_RESP”..........1........... Cú pháp “SUBMIT_MULTI”.......................41 3..........26 3..........27 3.....1................................................................................................................ Cú pháp “QUERY_SM”......................................................... Cú pháp “GENERIC_NACK”.......29 3......1........... Cú pháp “QUERY_SM_RESP”................................................. Lệnh “QUERY_SM”...............................1.................................7................2...............38 3............................................39 3............................................... Truyền không thành công.......................................................24 2..................................................................2..2.....................................................27 3...................1.....................37 3.....................................................31 3............ Lệnh “DATA_SM”................5......................30 3..................................1......34 3.2.....35 3........ Cú pháp “DATA_SM”....39 3....... Cú pháp “SUBMIT_SM_RESP”....28 3.....................1...............1.......2............8.....4.........................4...........4...........................................34 3............................................ Cú pháp “SUBMIT_MULTI_RESP”..................................45 4 .....1...............32 3....................................... CÁC PDU TRONG SMPP.1........................................... Cú pháp “BIND_RECEIVER”.......... Cú pháp “BIND_TRANSMITTER_RESP”.........................3.45 3.............. Địa chỉ chỉ nguồn và đích..................................26 3............................24 2..3....................................1......2....45 3.

.........................4. source_addr_npi........................................................ service_type................. Các tham số bắt buộc của SMPP...........................................................................................................................................2.............2................ addr_ton.................................... Cú pháp “ENQUIRE_LINK_RESP”......51 4......................................................55 4................ source_addr_ton...........................1.......................................................57 4................. validity_period.....................2..............12...............................................46 3......9......................2......47 3..... esme_addr_npi........15.......................................1..3..........................2..................................2..........18.................................................................2..............2.................................................................. interface_version......................................2...................... Cú pháp “CANCEL_SM_RESP”.............................................................. source_addr......59 4.......2................................54 4................49 PHẦN IV....................55 4................6.......... short_message..................................................................................48 3.....................22...55 4.. command_length.......................................................................................2.........54 4...............55 4.......51 4...........1... sm_length.....................................................................................................46 3.1..............................................................................5.............................................................................. message_id..........................2......................... password.....................................................54 4........51 4................................2.......................2...2.........2.................................. command_id................................................48 3........... Cú pháp “ENQUIRE_LINK”........... esme_addr........................................................25....................10......................................12....... sm_default_msg_id....................................54 4...............2.................................2.. system_id...... esme_addr_ton........................... dest_flag.58 4.............................2..................16.............56 4.....................54 4.....................................10........9...........47 3.2.................................3........................23............................. Lệnh “CANCEL_SM”...........................11....................................................... Cú pháp “REPLACE_SM”.................................. schedule_delivery_time..1.............. registered_delivery.............13...17.....2....2........... command_status...................2...........54 4..........................................................20..........................2......................................................... address_range.........51 4.2.................1... data_coding......................... Cú pháp “ALERT_NOTIFICATION”.............55 4........19..... Lệnh “ALERT_NOTIFICATION”. number_of_dests.................2................................................ system_type.. priority_flag.........................24...............1......14..4......8.....2.......................1.....................................55 4................................11..........47 3...........21.......2........... destination_addr...1.................57 4....................................9...............................................................10.....................................................................57 4............................................................................2................................. replace_if_present_flag.2..............3................. dest_addr_ton.................................58 4..............2.................................................1..........51 4......49 3..56 4...................................... Lệnh “ENQUIRE_LINK”................... dest_addr_npi........49 3................ Cú pháp “CANCEL_SM”................................. Bộ lệnh của SMPP................................1................................................ THAM SỐ TRONG SMPP......59 4...7................59 5 ................................9.......58 4............................2.......................................................................................... esm_class...............58 4..............53 4.....12.................1.........11........ Các tham số trong Header của lệnh.48 3................52 4......................................11........................................... Cú pháp “REPLACE_SM_RESP”...........................1.... Lệnh “REPLACE_SM”........... addr_npi.............54 4.......57 4............... sequence_number........................................................................... protocol_id.......................................................................10..

................67 4....... ms_msg_wait_facilities.....................................................................................29.3.......40......................................................21........ sar_total_segments.................... display_time..64 4............................................43.......6............5..... dpf_result..........28.............41.......................70 4..........26..30......................62 4......3.....14............64 4................67 4......28......63 4.3........................2..........4.................59 4...3.............................................68 4.............8....66 4...2............ receipted_message_id......................................................15.................2................ source_bearer_type..........2..2...................................62 4...............................................3...............3...........3.....23.................. source_network_type............2..2....3................................3...............69 4.70 4.........................................................4......16...............12................ Định nghĩa các Tag của tham số tùy chọn...38...................................................36......................................................3.................................................................68 4.......59 4......2.............................3..........31.........................3................................................................2.....70 4.........35... ms_availability_status..3..................26........ message_payload...................................................................................... alert_on_message_delivery......65 4................ sar_msg_ref_num...2......3.63 4........3... dest_bearer_type..............................................67 4...........3.........................20................................ user_message_reference........2...................62 4..................67 4..............................................................2..............................22....................2.32.............................60 4............................3..........................19.........................................2......................................61 4............................................17............ more_messages_to_send......................................................................2.....................................................................7............................63 4..27.3......3..59 4..............................10...........................................65 4......... callback_num................ language_indicator............................2......................... Mô tả tham số tùy chọn của SMPP......................................3....2......68 4.....1...............3...................68 4............3.................. destination_port.......... callback_num_pres_ind..........................2......3... dest_telematics_id............2.....3...3............................3...............................25...2....................... no_unsuccess.................. sms_signal...........................3..3.............................2...................3..70 4........................69 4.2.......66 4..........62 4.........................................................................34...........71 6 ...63 4......................64 4................24........ dl_name................ its_reply_type............................................. number_of_messages.....................2..2........2.........69 4...... Nhận dạng các Tag của tham số tùy chọn........66 4.................................................................................................3.................... ms_validity................. source_subaddress......... source_telematics_id.........3.........2.........2...........................................................2................................................................27.....3............. sc_interface_version.2..2...........................1.................................2......... network_error_code.....63 4....................... message_state ...............2.......................................................2...........................61 4.......................... qos_time_to_live..................3.......... set_dpf............................3...............................65 4................2.......2.................................3.......59 4....... callback_num_atag.... dest_subaddress........................2....65 4................2.....3.............................2............................3..........37................... its_session_info..................................................................66 4.....11..............3...66 4.............13......33.....................2.......... source_addr_subunit......................3.3...........70 4................................... source_port.2............................18.....2...........2................................................................................................65 4.. delivery_failure_reason.......................2..........39.... message_state........................61 4........................3........................ user_response_code..............................................2........................................................ dest_network_type................................9.2........................3............................... dest_addr_subunit...........................2.......... payload_type.....42.3....................3.................61 4......................2..................59 4......... privacy_indicator.3.............. additional_status_info_text.......................................................3.................2...... sar_segment_seqnum...............3..

.......................... Định dạng thời gian...............3.........1...................... Chiều dài tối đa của tin...72 5..2...................................71 PHẦN V................................................................................................1..... Định dạng thời gian tuyệt đối...................................................................74 PHỤ LỤC B..... ussd_service_op..........................................72 5.72 5............................................76 PHỤ LỤC D... VÍ DỤ VỀ TIN NGẮN CỦA DỊCH VỤ SMS.......................................1.................................................. VẤN ĐỀ MẠNG VÀ CÁC ĐỊNH NGHĨA CHUNG.75 PHỤ LỤC C...................................1.............................. ĐỊNH DẠNG TIN BÁO CÁO.....78 7 ..........................1..2........... Định nghĩa về thời gian.............................................................................................. XỬ LÝ NĂM 2000 TRONG SMPP...................................77 TÀI LIỆU THAM KHẢO.................72 5.......................................................................72 5................44........4....... Định dạng thời gian tương đối...............1............. BIỂU THỨC QUY TẮC TRONG UNIX .......................... Các mã lỗi của mạng..........................2..72 PHỤ LỤC A.............................2.......72 5...........................72 5.......................... Các định về đồng hồ............................1........................................................1..................................1............................

common to all SMPP PDUs MB Message Bureau . MSB Most Significant Byte MSC Mobile Switching Centre MS Mobile Station MWI Message Waiting Indication NACK Negative Acknowledgement NSAP Network Service Access Point PDU Protocol Data Unit PSSD Process Unstructured Supplementary Services Data PSSR Process Unstructured Supplementary Services Request SME Short Message Entity SMSC Short Message Service Centre SMPP Short Message Peer to Peer Protocol UDHI User Data Header Indicator URL Uniform Resource Locator USSN Unstructured Supplementary Services Notification USSR Unstructured Supplementary Services Request VMA VoiceMail Alert VPS Voice Processing System TIA Telecommunications Industry Association WAP Wireless Application Protocol (http://www.CÁC TỪ VIẾT TẮT ACK Acknowledgement API Application Programming Interface CDR Call Detail Record ESME External Short Message Entity ETSI European Telecommunications Standards Institute HEADER Leading portion of the SMPP message.org) WCMP Wireless Control Message Protocol WDP Wireless Datagram Protocol 8 .This is typically an operator message bureau.wapforum.

− Một ESME cũng có thể nhận tin bằng SMSC từ các SME khác (ví dụ: các mobile station). Hình 1-1 mô tả các giao tiếp có thể sử dụng giao thức SMPP. − Bỏ qua hay thay thế một tin ngắn được lưu trong SMSC. − Kết hợp một kiểu dịch vụ với từng tin ngắn. ví dụ: đóng gói hoặc lưu trữ và chuyển tiếp. CDMA. SMPP hỗ trợ: − Truyền tin từ một ESME tới một hoặc nhiều đích bằng SMSC. Sơ đồ mô tả các giao tiếp trong mạng di động. Tài liệu này sẽ mô tả định dạng của các lệnh và phản hồi có trong giao thức SMPP. − Lựa chọn chế độ của tin. − Gửi các báo báo.25 để gửi và nhận tin ngắn với một SMSC đó. TỔNG QUAN VỀ SMPP Giao thức Short Message Pear to Pear (viết tắt là SMPP) là một chuẩn mở. − Truy vấn trạng thái của một tin ngắn được lưu trong SMSC. Hình 1-1. bỏ qua hoặc thay thế các tin ngắn.PHẦN I. iDEN. 9 .ESME) có thể kết nối được. Giao thức SMPP cho phép một ESME có thể khởi tạo kết nối tại tầng ứng dụng với một SMSC qua mạng TCP/IP hoặc X. Trong tài liệu sẽ sử dụng thuật ngữ SMSC để đại diện cho bất kỳ một server SMPP nào mà một SMPP client (External Short Message Entity . Email Gateway. Giao thức SMPP hỗ trợ cho các công nghệ mạng Digital Cellular gồm có: GSM. hoặc những gateway dùng để gửi tin nhắn). được thiết kế để cung cấp các cơ chế truyền dữ liệu một cách linh hoạt cho việc truyền tin ngắn giữa một trung tâm nhắn tin (ví dụ: SMSC) và một hệ thống ứng dụng tin ngắn (ví dụ: WAP Proxy Server. IDMA. − Thiết lập mức độ ưu tiên cho tin ngắn. − Định nghĩa kiểu định dạng dữ liệu cho tin ngắn. − Lên lịch gửi tin theo ngày tháng. − Thiết lập khoảng thời gian hợp lệ cho tin ngắn. ESME cũng có thể sử dụng SMPP để truy vấn. ví dụ: voice mail notification.

2. thông tin chi tiết được giải thích tại các đoạn sau. Trong một SMPP Session. một ESME có thể phát ra một loạt các yêu cầu tới một SMSC và nhận các phản hồi tương ứng với các yêu cầu từ SMSC. Giao thức SMPP định nghĩa: − Một tập các lệnh và PDU cho việc trao đổi thông tin giữa ESME và SMSC.25. − Tin được gửi từ ESME (Transceiver) tới SMSC và tin được gửi từ SMSC tới ESME (Transceiver) Hình 1-2 mô tả 3 nhóm trên. Mô tả SMPP Session Một SMPP Session giữa một SMSC và một ESME được khởi tạo bởi ESME trước khi thiết lập một kết nối mạng với SMSC và khi đó sẽ tạo ra một yêu cầu SMPP Bind để mở một SMPP Session. Hình 1-2.1. Tương tự như vậy. Trong phiên bản hiện tại của giao thức SMPP. chỉ trừ các ngoại lệ đối với PDU alert_notification sẽ không có phản hồi.25) và hai SMPP Session (Transmitter và Receiver). Tương ứng với một yêu cầu phải có một phản hồi. SMSC có phát ra các yêu cầu tới ESME và nhận các phản hồi tương ứng. Việc trao đổi tin giữa ESME và SMSC bằng SMPP có thể chia ra làm 3 nhóm sau: − Tin được gửi từ ESME (Transmitter) tới SMSC. Giao tiếp giữa SMSC và ESME 1. một ESME có thể thiết lạp một SMPP Transceiver Session qua một kết nối mạng đơn. Tất cả các lệnh phải gồm có PDU của yêu cầu và PDU của phản hồi. Định nghĩa giao thức SMPP SMPP dựa trên sự trao đổi đơn vị dữ liệu (PDU) của giao thức yêu cầu và phản hồi giữa ESME và SMSC qua mạng TCP/IP hoặc X. − Dữ liệu mà một ứng dụng của ESME có thể trao đổi với một SMSC trong các lệnh. Một ESME mong muốn gửi và nhận các tin được yêu cầu để thiếp lập hai kết nối mạng (TCP/IP hoặc X.1. Một SMPP Session có thể có các trạng thái sau: 10 . − Tin được gửi từ SMSC tới ESME (Receiver).

Một ESME đã thôi bind khỏi một SMSC và đã ngắt kết nối mạng. một ESME khác hoặc bởi chính SMSC (ví dụ: một SMSC gửi báo cáo). Một ESME được bind như như một transmitter có thể gửi SMS cho một SMSC để truyền tới một MS hoặc một ESME khác. từ ESME khác hoặc chính SMSC (ví dụ: SMSC gửi báo cáo). SMSC bind tới ESME bằng việc phát một yêu cầu outbind.− OPEN (Đã kết nối nhưng chưa Bind). Một ESME đã thiết lập một kết nối mạng với SMSC nhưng chưa phát yêu cầu Bind. ESME cũng có thể nhận các tin ngắn từ một SMSC mà có nguồn gốc từ một MS. − BOUND_TRX.…) thì ESME ngắt kết nối mạng. một ESME được bind như một Transceiver có thể gửi các tin ngắn tới một SMSC để truyền tới MS hoặc tới một ESME khác. Nếu ESME không chấp nhận outbind session (ví dụ: lỗi system_id. Lệnh Outbind Mục đích của lệnh outbind là cho phép SMSC ra hiệu cho một ESME khởi tạo yêu cầu bind_receiver tới SMSC.1. ESME đã yêu cầu bind như một ESME Transceiver (phát ra PDU bind_transceiver) and đã nhận một phản hồi từ SMSC cho phép bind. Sơ đồ tuần tự của lệnh outbind 11 . − BOUND_TX. − CLOSE (Đã thôi bind và ngắt kết nối). SMSC có thể thôi bind khỏi ESME.2. ESME ESME SMSC SMSC outbind bind_receiver bind_receiver_res p deliver_sm deliver_sm_resp Hình 1-3. truy vấn hoặc bỏ qua một tin ngắn được đệ trình trước đó. Một ESME được bind như một receiver có thể nhận tin ngắn từ một SMSC được gửi từ một MS. Như vây. Một ESME được bind như như Transceiver hỗ trợ các tất cả các lệnh được hỗ trợ bởi một Transmitter ESME và một Receiver ESME. Một Outbind SMPP session giữa một SMSC và một ESME có thể được khởi tạo bởi SMSC trước khi thiết lập một kết nối mạng với ESME. Để ví dụ. ESME phản hồi bằng yêu cầu bind_receiver. ESME đã yêu cầu bind như một ESME Receiver (phát ra PDU bind_receiver) và đã nhận một phản hồi từ SMSC cho phép bind. Một khi một kết nối mạng được thiết lập. hoặc sai mật khẩu. − BOUND_RX. SMSC sẽ trả lời bằng bind_receiver_resp. ESME cũng có thể thay thế. khi SMSC có các tin chưa giải quyết xong mà cần gửi cho ESME. ESME đã yêu cầu bind như một ESME Transmitter (phát ra PDU bind_transmitter) và đã nhận một phản hồi từ SMSC cho phép bind. 1.

3.1. Danh sách các PDU có trong SMPP và ngữ cảnh sử dụng các PDU. Các PDU trong SMPP Bảng 1-1. Trạng thái của Phát bởi Phát bởi Tên SMPP Session ESME SMSC bind_transmitter OPEN Yes No bind_transmitter_resp OPEN No Yes bind_receiver OPEN Yes No bind_receiver_resp OPEN No Yes bind_transceiver OPEN Yes No bind_transceiver_resp OPEN No Yes outbind OPEN No Yes unbind BOUND_TX Yes Yes BOUND_RX Yes Yes BOUND_TRX BOUND_TX Yes Yes Yes Yes BOUND_RX Yes Yes submit_sm BOUND_TRX BOUND_TX Yes Yes Yes No submit_sm_resp BOUND_TRX BOUND_TX Yes No No Yes submit_sm_multi BOUND_TRX BOUND_TX No Yes Yes No submit_sm_multi_resp BOUND_TRX BOUND_TX Yes No No Yes data_sm BOUND_TRX BOUND_TX No Yes Yes Yes BOUND_RX Yes Yes BOUND_TRX BOUND_TX Yes Yes Yes Yes BOUND_RX Yes Yes deliver_sm BOUND_TRX BOUND_RX Yes No Yes Yes deliver_sm_resp BOUND_TRX BOUND_RX No Yes Yes No query_sm BOUND_TRX BOUND_RX Yes Yes No No query_sm_resp BOUND_TRX BOUND_RX Yes No No Yes BOUND_TRX No Yes unbind_resp data_sm_resp 12 .

25.của SMPP. nó có thể đòi hỏi tầng mạng tại thực thể gửi sẽ phải nắm giữ được sự phân đoạn của các PDU. Nếu cần thiết. Hình 1-4. Giao tiếp giữa ESME và SMSC trong SMPP 13 . tầng mạng tại thực thể nhận cũng phải tổng hợp lại được các PDU trước khi đưa chúng lên tầng SMPP. Hình 1-4 mô tả các giao tiếp chung giữa ESME và SMSC. Tương tự. Tại mức SMPP. để truyền như một dãy các gói được phân đoạn qua kết nối mạng. Kết kết nối tại tầng mạng của SMPP Giao tiếp vần chuyển bên dưới giữa SMSC và ESME có thể dựa trên một kết nối mạng TCP/IP hoăck X. SMPP là giao thức thuộc tầng ứng dụng không dùng cho các chức năng vận chuyển.4.cancel_sm BOUND_RX Yes No cancel_sm_resp BOUND_TRX BOUND_RX Yes No No Yes replace_sm replace_sm_resp enquire_link BOUND_TRX BOUND_TX BOUND_TX BOUND_TX No Yes No Yes Yes No Yes Yes BOUND_RX Yes Yes BOUND_TRX BOUND_TX Yes Yes Yes Yes BOUND_RX Yes Yes alert_notification BOUND_TRX BOUND_RX Yes No Yes Yes generic_nack BOUND_TRX BOUND_TX No Yes Yes Yes BOUND_RX Yes Yes BOUND_TRX Yes Yes enquire_link_resp 1. ESME và SMSC xử lý các kết nối mạng giống như các chức năng vận chuyển. truyền và nhận các PDU.

để có thể gửi các tin tới SMSC. cancel_sm_resp.5. như hình vẽ. Tham khảo chi tiết trong bảng 1-1 để xem các lệnh có thể được gửi từ một ESME tới SMSC. − replace_sm: Thay đổi một thông được được đệ trình trước đó. data_sm_resp.ESME Transmitter Hình 1-5 mô tả các chuỗi các yêu cầu/phản hồi giữa một SMSC và một ESME được bind như một Transmitter. Việc trao đổi PDU của yêu cầu và phản hồi giữa một ESME Transmitter và SMSC có thể xảy ra một cách đồng bộ hoặc bất đồng bộ.1.2. Trong các trường hợp sau đây. Ví dụ các PDU có thể được gửi từ ESME Transmitter tới SMSC gồm có: submit_sm. một ESME phải sử dụng các định danh của tin được trả lại từ SMSC trong tin báo nhận: − query_sm: Truy vấn trạng thái của tin được đệ trình trước đó trên SMSC. 14 . khuyến nghị không được quá 10 tin trong một lần. Các PDU được gửi tới SMSC bởi ESME phải được thông báo nhận một PDU được phản hồi từ SMSC.5. replace_sm_resp. Sơ đồ tuần tự của SMPP session . sẽ do cách triển khai giao thức SMPP trong thực tế.1. − cancel_sm: Bỏ qua việc truyền của một tin được đệ trình trước đó. Do vậy.5. ESME có thể gửi nhiều yêu cầu tới SMSC. Các phản hồi phải được trả lại bởi SMSC theo thứ tự tương ứng với các yêu cầu của ESME. Số lượng các tin chưa được giải quyết giữa ESME và SMSC không được quy định. 1. data_sm. Các tin được phản hồi từ SMSC về ESME PDU phản hồi cho việc đệ trình một tin tới SMSC sẽ chứa một định danh của tin (nó là duy nhất đối với mỗi tin) và một trạng thái cho biết tin được ESME đệ trình là hợp lệ hay không. Một dãy các yêu cầu liên tiếp được phát một cách bất đồng bộ bởi một ESME phải tương ứng bằng một dãy các phản hồi tiếp theo từ SMSC. ESME phải phản hồi lại SMSC theo thứ tự yêu cầu của SMSC. 1. Thêm vào. Chỉ có phản hồi liên quan đến một ESME Transmitter trong một session này là enquire_link_resp. query_sm_resp. SMSC sẽ trả lại một trạng thái lỗi: submit_sm_resp. không cần phải đợi tín hiệu đồng bộ tương ứng với các PDU. Các tin được gửi từ ESME tới SMSC Một ESME mà gửi các tin ngắn tới một SMSC phải được kết nối tới SMSC như một ESME Transmitter hoặc ESME Transceiver.

1.1.ESME Receiver Hình 1-6 mô tả các chuỗi các yêu cầu/phản hồi giữa một SMSC và một ESME được bind như một Receiver. Các ứng dụng điển hình hoạt động theo ESME Receiver gồm có: − Email gateway: chấp nhận các tin bắt nguồn từ các MS để gửi tới các hòm thư điện tử của Internet. 15 . (chứa trong tham số của sequence_number) được gửi bởi SMSC. Các tin được gửi từ SMSC tới ESME SMSC có thể gửi các tin ngắn tới một ESME. ngoại trừ PDU alert_notification.6.6. Phản hồi cũng phải đưa trạng thái của lệnh cho biết tin được SMSC truyền tới ESME là hợp lệ hay không. Sơ đồ tuần tự của SMPP session .ESME ESME SMSC SMSC bind_transmitter(1) bind_transmitter_resp(1) submit_sm(2) submit_sm_resp(2) submit_sm(3) submit_sm(4) query_sm(5) submit_sm(6) submit_sm_resp(3) submit_sm_resp(4) query_sm_resp(5) submit_sm_resp(6) unbind(7) unbind_resp(7) Hình 1-5.6. Tin phản hồi từ ESME về SMSC PDU phản hồi từ một ESME Receiver phải lưu giữ các định danh quá trình giao dịch. Ví dụ các PDU có thể được truyền từ SMSC tới ESME gồm có: deliver_sm.2. − SMSC cũng có thể gửi một báo cáo tới ESME chứa trạng thái của một tin ngắn được đệ trình trước đó. Sơ đồ tuần tự yêu cầu/phản hồi cho một ESME Transmitter. data_sm. 1. data_sm_resp. khi ESME nhận được. ESME phải được kết nối tới SMSC như một ESME Receiver hoặc một ESME Transceiver. Tiếp theo. Các PDU được truyền SMSC truyền tới ESME phải được thông báo nhận bằng một PDU phản hồi của ESME. Ví dụ các phản hồi có thể được gửi từ một ESME Receiver tới SMSC: deliver_sm_resp. 1. ESME trả lại một trạng thái tương ứng. Trong trường hợp này. Xem bảng 1-1 để xem chi tiết các lệnh có thể được SMSC gửi tới ESME.

ESME ESME SMSC SMSC bind_receiver(1) bind_receiver_resp(1) deliver_sm(1) deliver_sm_resp(1) deliver_sm(2) deliver_sm(3) deliver_sm(4) deliver_sm_resp(2) deliver_sm_resp(3) deliver_sm_resp(4) unbind(2) unbind_resp(2) Hình 1-6.7. Trao đổi tin kép giữa SMSC và ESME SMSC và ESME có thể tạo ra session trao đổi đổi thông tin kép (duplex). khuyến nghị không được quá 10 tin trong một lần. ESME phải phản hồi lại cho SMSC theo cùng thứ tự của yêu cầu. ví dụ WAP Proxy Server. ngoài trừ trường hợp alert_notification. Các thuê bao di động khởi tạo một yêu cầu thông tin tới WAP Proxy Server và thông tin phản hồi sẽ được trả lại bằng SMSC tới MS. Để có thể gửi các tin tới SMSC. một ESME phải sử dụng các định danh của tin được trả lại từ SMSC trong thông tin báo nhận: − query_sm: Truy vấn trạng thái của tin được đệ trình trước đó − cancel_sm: Bỏ qua việc chuyển tin được đệ trình trước đó − replace_sm: Thay thế một tin được đệ trình trước đó Khi nhận được. Trong trường hợp này.ESME Transceiver Sơ đồ sau mô tả chuỗi các yêu càu và phản hồi giữa SMSC và ESME được bind như Transceiver. Một dãy các yêu cầu liên tiếp được phát không đồng bộ bởi một SMSC phải được tương ứng bằng một dãy các phản hồi tương ứng từ ESME. Ví dụ các PDU có thể gửi trong SMPP Transceiver session: data_sm. submit_sm. Số lượng các tin chưa được giải quyết giữa ESME và SMSC không được quy định. sẽ do cách triển khai giao thức SMPP trong thực tế.7. ESME phải được kết nối với SMSC như một ESME Transceiver. 16 . 1. SMSC phải phản hồi bằng các PDU thông báo nhận. không cần đợi tín hiệu đồng bộ. Sơ đồ tuần tự các yêu cầu và phản hồi cho một ESME Receiver. các tin được trao đổi theo cả hai chiều. Trao đổi các PDU của yêu cầu và phản hồi giữa SMSC và ESME Receiver có thể xẩy ra một cách đồng bộ hoặc bất đồng bộ. deliver_sm. 1. Typical SMPP session sequence . Các ứng dụng điển hình trong trường hợp này gồm có: − Trao đổi thông tin hai chiều giữa một MS và một ESME. SMSC có thể gửi nhiều yêu cầu deliver_sm tới ESME. Tham chiếu bảng 1-1 để xem các thông tin chi tiết về các lệnh có thể có trong SMPP Transceiver session.1. Do vậy.

thực thể nhận phải trả lại PDU phản hồi tương ứng cho một PDU yêu cầu. mỗi SMPP session phải được quản lý theo thời gian trên cả hai phía ESME và SMSC: − Mỗi SMPP session cần phải có khoảng thời gian hiệu lực xác định.ESME ESME SMSC SMSC bind_transceiver (1) bind_transceiver_resp (1) data_sm (1) data_sm_resp (1) data_sm (2) data_sm_resp (2) data_sm (3) data_sm (2) data_sm (3) data_sm_resp (3) data_sm_resp (2) data_sm_resp (3) unbind (4) unbind_resp (4) Hình 1-7. Các PDU của phản hồi cần phải được ánh xạ tương ứng với các PDU yêu cầu thông qua tham số sequence_number trong Header. SMSC có thể gửi nhiều yêu cầu data_sm tới ESME mà không cần phải đợi tín hiệu đồng bộ. trừ ngoại lệ PDU alert_notification là không có phản hồi. Trong trường hợp trong PDU của yêu cầu gốc có chứa lỗi. chỉ định rằng PDU gốc đã đến đích.8. SMPP session phải bị hủy. ESME phải trả lại các phản hồi theo thứ tự các yêu cầu nhận được từ SMSC và ngược lại các phản hồi từ SMSC cũng phải theo thứ tự của các yêu cầu nhận được từ ESME. − Sau một khoảng thời gian không có sự giao dịch. thực thể nhận phải trả lại phản hồi bằng một mã lỗi được trèn vào trong trường command_status trong phần header của PDU phản hồi. Trong tất cả các trường hợp. Nếu thực thể nhận tìm thấy một lỗi trong header của PDU. 1. 1. Bắt lỗi Tất cả các lệnh của SMPP bao gồm một PDU yêu cầu và một PDU phản hồi tương ứng. Sơ đồ tuần tự các yêu cầu và phản hồi cho ESME Transceiver.9. − Một timer cho phép cả ESME và SMSC có thể truy vấn trạng thái cả SMPP session thông qua lệnh equire_link. SMPP Timer Để đảm bảo việc trao đổi của các giao dịch có hiệu lực. Số lượng tối đa các tin cần chờ xử lý được khuyến nghị là 10. Các PDU được trao đổi giữa SMSC và ESME Transceiver có thể được tiến hành một cách đồng bộ hoặc không đông bộ. nó phải trả lại PDU generic_nak cho người gửi. 17 .

18 .2. 1. query_sm. ESME phải yêu cầu báo cáo từ SMSC trong submit_sm hoặc data_sm. Xem thông tin chi tiết của SMPP Timer trong mục 6. 1. replace_sm và cancel_sm. Chế độ Store and Forward Theo quy ước SMS phải lưu các tin trong kho của SMSC trước khi chuyển tiếp các tin cho việc truyền tới SME của người nhận. Trong mô hình này các tin vãn được lưu một cách an toàn trước khi tất cả các lần cố gắng gửi là thành công.10.− Khoảng thời gian giữa một yêu cầu và phản hồi tương ứng cũng phải được xác định. Nếu được SMSC hỗ trợ. Chế độ này sử dụng submit_sm. data_sm. Cơ chế truyền điển hình có thể được SMSC hỗ trợ là: − Store and Forward − Datagram − Transaction Các chế độ được mô tả chi tiết tại các đoạn sau. Để xác định được tin đã thực sự được truyền hay chưa. một ESME có thể chọn cơ chế truyển tin. Các chế độ của tin SMPP đưa ra các chế độ của tin.1.10. nhưng là tùy chọn.

xem mục 4. Sơ đồ tuần tự cho chế độ lưu trữ và chuyển tiếp 1.2. không cần đến các chức năng lưu trữ và cố gắng gửi. Trong chế độ này các thực thể gửi (ví dụ: ESME) sẽ không nhận bất kỳ thông báo nhận nào.2. Các chức năng điển hình sử dụng chế độ này là nhật ký truyền.10. Chế độ Datagram Chế độ Datagram phỏng theo datagram ở trong các giao thức truyền thông khác như truyền UDP datagram và không lưu trữ giống như trong chế độ Store and Forward. Chế độ này được sử dụng cho các ứng dụng cần tốc độ cao. 19 .ESME SMPP SMSC Wireless Network Protocol MS bind_transmitter bind_transmitter_resp bind_receiver bind_receiver_resp submit_sm (registered_delivery = SMSC Deliver Receipt) submit_sm_resp Network Delivery Attempt deliver_sm (esm_class = SMSC Delivery Receipt) ACK deliver_sm_resp submit_sm (registered_delivery = SMSC Delivery Receipt) submit_sm_resp Network Delivery Attempt NACK Network Delivery Attempt ACK deliver_sm (esm_class = SMSC Delivery Receipt deliver_sm_resp Hình 1-8.12. Tham số esm_class được sử dụng để lựa chọn chế độ Datagram. SMPP hỗ trợ chế độ này thông qua data_sm.

Chế độ Transaction chỉ sử dụng data_sm. Còn trong chế độ Datagram. xem mục 4.3. Sơ đồ tuần tự truyền tin cho chế độ Transaction 1. Chế độ Transaction Chế độ transaction cho phép ESME. Kiểu tin được xác định thông qua tham số esm_class. 1. Trong chế độ Transaction. truyền tin đến một nhóm. Tham số esm_class được sử dụng để lựa chọn chế độ.2. PDU phản hồi chỉ định rằng tin có được SMSC chấp nhận thông quá kết nối SMPP không. ESME SMPP SMSC Wireless Network Protocol MS binding_transmitter binding_transmitter_resp data_sm (esm_class = forward) Network Delivery Attempt ACK data_sm_resp Hình 1-10.10. Các ứng dụng sử dụng chế độ này thường là multicast.ESME SMPP SMSC Wireless Network Protocol MS binding_transceiver binding_transceiver_resp data_sm (esm_class = datagram) data_sm_resp Network Delivery Attempt ACK Hình 1-9. đã gửi tin gốc. không cần đến kho lưu trữ của SMSC. Sơ đồ tuàn tự truyền tin cho chế độ datamgram.11. deliver_sm hoặc data_sm.12. 20 . ESME nhận một data_sm_resp chỉ định kết quả của việc truyền end-to-end. Chế độ này được thiết kế cho các ứng dụng truyền các tin theo thời gian thực khi một ESME yêu cầu truyền đồng bộ end-to-end có thông báo nhận. nhận một thông báo nhận chỉ định tin có được gửi đến MS thành công hay không trong PDU phản hồi. Các loại tin Các tin nhắn thông thường và đặc biệt có thể được truyền giữa ESME và SMSC trong submit_sm.

SME Manual/User Acknowledgement. 1. SME Manual/User Acknowledgement Loại tin Manual/User Acknowledgement là một tin trả lời cho tin yêu cầu trả lời.3.5. Nó có thể được chứa trong deliver_sm hoặc data_sm. dest_addr_npi.11. Trong các hệ thống tính cước thường sẽ dựa vào thông tin này để tính cước. nhưng các tin vẫn được giữ trong SMSC cho các lần cố gắng truyền tiếp theo. Nó cung cấp một trạng thái trung gian của tin đang có gắng truyền. Conversation Abort. Các trường hợp điển hình được sử dụng hiện này: − Thông báo về khả năng chứa của bộ nhớ cho hệ thống Voice Mail. ví dụ: dest_addr_ton. Địa chỉ đích được của loại tin này được lấy từ địa chỉ nguồn của tin ngắn gốc. 1. không phải là dấu hiệu xác nhận người sử dụng đã đọc tin. Loại tin này không phải được hỗ trợ bởi hầu hết các mạng.1.11. loại tin này có thể chứa một mục trong menu được lựa chọn trong một danh sách của menu mà đã gửi cho một ứng dụng. − Địa chỉ đích. ví dụ: source_addr_ton. − Báo cáo kết quả của lần cố gắng truyền tin đầu tiên là thất bại. 21 . source_addr_npi. Ví dụ. Loại tin này không được hỗ trợ trong hầu hết các mạng. destination_addr.2. Conversation Abort Loại tin này được sử dụng để tương tác với các dịch vụ thoại được định nghĩa trong CDMA.11. SMSC sẽ dựa vào trạng thái của các tin trong kho lữu trữ để tạo ra tin báo cáo cho đối tượng gửi tin. 1. SME Delivery Acknowledgement.11. 1. Loại tin này không được hỗ trợ bởi hẫu hết các mạng. Intermediate Notification Intermediate Notification là một loại tin đặc biệt mà SMSC có thể gửi tới ESME để một mobile ngắt việc truyền tin. source_addr. SME Delivery Acknowledgement SME Delivery Acknowledgement là tin thông báo tin ngắn đã được truyền tới SME. − esm_class − message_state − network_error_code − receipted_message_id 1.11. Intermediate Notification. SMSC Delivery Receipt Loại tin này được sử dụng để chứa các thông báo hay báo cáo của SMSC.4. Các trường có liên quan trong deliver_sm và data_sm khi truyền loại tin này: − Địa chỉ nguồn. Nó được sử dụng để thông báo bỏ qua một cuộc nói chuyện. Địa chỉ nguồn của loại tin này được lấy từ địa chỉ đích có trong tin ngắn gốc.Các loại tin gồm có: SMSC Delivery Receipt.

Kích thước của các trường tham số Bảng 2-1. Là một chuỗi các octet. được lưu dưới dạng octet. Đinh dạng chung của PDU Bảng 2-2. không cần đến ký tự NULL. Các octet cần phải được chuyển về MSB trước (Big Endian). ĐỊNH DẠNG VÀ KIỂU PDU TRONG SMPP 2. tận cùng là ký tự NULL để xác định dấu hiệu kết thúc.2. Định dạng tổng quát của PDU trong giao thức SMPP command length 4 octet SMPP PDU PDU Header (bắt buộc) PDU Body (tùy chọn) command command sequence PDU Body id status number Length = Giá trị của command length – 4 (octet) Phần Header là bắt buộc. không cần ký tự NULL kết thúc. Các định nghĩa về kiểu Các kiểu được sử dụng để định nghĩa các tham số trong SMPP: Integer. 1: dùng cho ký tự NULL 17: dùng cho 16 ký tự cộng thêm ký tự NULL Chiều dài thay đổi tự 0 đến 254. 2. 22 . kết thúc bằng ký từ NULL. Octet String A. Là một chuỗi các ký tự. Kích thước các trường tham số Kích thước (octet) 4 Thay đổi 1 đến 16 Cố định hoặc 17 Thay đổi 0 đến 254 Kiểu Mô tả Integer C-Octet String Kích thước cố định là 4 octet. kết thúc bằng ký tự NULL. mỗi ký tự mô tả các số hệ mười từ 0 đến 9. tương đương là số 32 bit Chuỗi gồm các ký tự ASCII có chiều dài thay đổi từ 1 đến 15. C-Octet String. Định dạng chi tiết được mô tả trong phần 3.1. C-Octet String (Hex).PHẦN II. Một chuỗi rỗng cũng chứa ký tự NULL là octet 0x00. Là một dãy các ký tự ASCII. Là một chuỗi ký tự ASCII. Body là tùy chọn.1. 1 C-Octet String Octet String 2. C-Octet String (Decimal). Là số nguyên dương. mỗi ký tự mô tả các số theo hệ hexa từ 0 đến F.1.

query_sm.… Mỗi PDU của yêu cầu được cấp phát một giá trị duy nhất nằm trong khoảng: 0x00000000 . Mô tả định dạng của PDU Tên trường H E A D E R B O D Y Kiểu Mô tả command_length Kích thước 4 Integer command_id 4 Integer command_status 4 Integer sequence_number 4 Integer Chỉ ra kích thước tổng cộng của PDU.2. tính bằng octet. Chắ trạng thái thành công hay thất bại của một yêu cầu. 2.2. Giá trị của nó nằm trong khoảng: 0x00000001 . ví dụ: submit_sm. tại vị trí bắt đầu trong phần Header của PDU. chỉ ra chiều dài tổng cộng của PDU. Ví dụ: Giả sử ta có một luồng dữ liệu mô tả phần header của một PDU như sau (mô tả dưới dạng hexa): 23 . không có Body. xem chi tiết trong phần 4. Các tham số bắt buộc tương ứng với trường command_id.1. Giá trị của trường này là một số nguyên 4 octet được chuyển đổi về dạng Big Endian.0x7FFFFFFF. tính bằng octet. Nó chỉ liên quan đến PDU của phản hồi. Danh sách các lỗi được định nghĩa trong phần 4. Một vài PDU chỉ có phần Header. ví dụ: enquire_link. ESME hoặc SMSC phải được trường command_id trước.0x800001FF Chú ý: command_id của phản hồi đồng nhất với yêu cầu.2. do vậy phải chứa giá trị NULL trong PDU của yêu cầu. Giá trị phải được tăng tự động bởi các yêu cầu và phải được lữu giữ trong các phản hồi.0x000001FF Mỗi PDU của phản hồi được cấp phát một giá trị duy nhất nằm trong khoảng: 0x80000000 . Các tham số bắt buộc Thay đổi Các tham số tùy chọn Thay đổi hỗn tạp hỗn tạp Các tham số tùy chọn tương ứng với trường command_id.2. xem chi tiết trong phần 4. Cách bố trí của PDU Bảng 2-3. Chiều dài của PDU Trường command_length. Chứa định danh của mỗi PDU. đặc biệt trong trao đổi tin bất đồng bộ. Phần 4 sẽ mô tả chi tiết command_id. Chứa chỉ số tuần tự để cho phép các yêu cầu và phản hồi có thể xác định được mối tương quan với nhau. Để phân tích được một PDU. chỉ có bit 31 được thiết lập.

3. data_sm và deliver_sm. SMP hỗ trợ chiều dài tin mở rộng trong các PDU submit_sm. Nếu một ESME muốn đề trình một tin có chiều dài lớn hơn 254 octet thì trường sm_length phải thiết lập là NULL và tham số tùy chọn message_payload phải chỉ ra chiều dài của tin.2. 2. Do vậy. Kích thước tối đa được chỉ ra trong trường sm_length là 254. Định dạng tham số tùy chọn Tất cả các tham số tùy chọn được định dạng theo TVL (Tag. Định dạng các tham số tùy chọn Tên tham số Tag Kích thước 2 Kiểu Integer Length 2 Integer Value Thay đổi Thay đổi Mô tả Có giá trị duy nhất đổi với mỗi tham số tùy chọn. ESME hoặc SMSC có thể đưa vào một vài các tham số tùy chọn để sử dụng cho một chức năng mới.1. Bảng 2-4. tùy theo mạng bên dưới. Các tham số tùy chọn Các tham số tùy chọn là một cơ chế để sử dụng trong tương lai. 24 . Chú ý: Chiều dài thật sự của tin có thể truyền tới một MS có thể là khác. Khả năng tương thích của các phiên bản cũ của giao thức SMPP Để có thể đảm bảo được sự tương thích các thực thể như SMSC và ESME đang sử dụng phiên bản cũ của giao thức SMPP có thể dễ dàng giao tiếp được với các thực thể sử dụng phiên bản mới hơn. Length và Value cho mỗi tham số được định nghĩa trong phần 4. deliver_sm và replace_sm. tính bằng octet Chứa giá trị thực sự của tham số tùy chọn 2.4. submit_multi. Length. 2. Chúng luôn luôn xuất hiện tại cuối của PDU. việc diễn giải SMPP phải đảm bảo được quá trình xử lý thành công và thích hợp với các trường hợp sau: − Nếu một thực thể của SMPP nhận được một lệnh không được chấp nhận hoặc không hỗ trợ.2. Value). nó cần phải trả lại một PDU generic_nack chỉ ra lệnh sai trong trường command_status.2. Chỉ ra kích thước của trường Value. Kích thước của tin và phần mở rộng của tin Kích thước của tin ngắn (hoặc dữ liệu của người sử dụng) được định nghĩa trong trường sm_length của các PDU submit_sm.3.00 00 00 2F 00 00 00 02 00 00 00 00 00 00 00 01 53 4D 50 50 33 54 45 53 54 00 73 65 63 72 65 74 30 38 00 53 55 42 4D 49 54 31 00 00 01 01 00 Header được phân tích như sau: 00 00 00 2F command_length 00 00 00 02 command_id 00 00 00 00 command_status 00 00 00 01 sequence_number 0x0000002F 0x00000002 (bind_transmitter) 0x00000000 0x00000001 2. Giá trị cho Tag.4. submit_multi.

được yêu cầu trong ngữ cảnh của lệnh. tham số tùy chọn được xử lý. Mỗi thực thể sẽ định nghĩa ra chiều dài tối đa cho mỗi tham số. − Nếu chiều dài giá trị của tham số tùy chọn không được chấp nhận. nếu không thì tham số nên bị bỏ qua. o Tag không được chấp nhận. thực thể SMPP nên trả lại một lỗi chỉ ra tham số đó không hợp lệ. o Tag không được chấp nhận hoặc không được hỗ trợ thì tham số đó bị bỏ quan và tham số tiếp theo được xử lý. − Một thực thể SMPP nhận được một giá trị trị tham số như “reserved” thì nên sử dụng giá trị mặc định được định nghĩa. Khả năng tương thích của các phiên bản mới của giao thức SMPP Để có thể đảm bảo được sự tương thích các thực thể như SMSC và ESME đang sử dụng phiên bản mới của giao thức SMPP có thể dễ dàng giao tiếp được với các thực thể sử dụng phiên bản cũ hơn.− Khi một thực thể SMPP nhận được một tin chứa các tham số tùy chọn có giá trị Tag như sau: o Tag được hỗ trợ bởi thực thể đó. 2.4. nhưng không mong trờ một lệnh gì. thực thể SMPP nên trả lại lỗi chiều dài tham số. việc diễn giải SMPP phải đảm bảo được quá trình xử lý thành công và thích hợp với các trường hợp sau: − Các PDU đã có không được loại bỏ khỏi giao thức − Định dạng mới của tin phải giống như định dạng cũ − Các tham số mới chỉ là thêm vào − Các tham số tùy chọn không nên bắt buộc − Các tham số bắt buộc không nên trở thành tùy chọn − Các tham số bắt buộc thêm không nên đưa vào các PDU sẵn có − Các tham số bắt buộc đã có không được loại bỏ khỏi các PDU sẵn có − Giá trị của tất cả các tham số sẵn có không được thay đổi trogn phiên bản mới 25 . tham số sẽ bị bỏ qua. − Một thực thể SMPP phát hiện ra rằng một tham số tùy chọn. − Nếu tham ssó không được chấp nhận hoặc không hợp lệ. không được đưa ra thì nên trả lại một tin phản hồi về lỗi một tham số tùy chọn cần được cung cấp. Do vậy.

Định dạng của PDU bind_transmitter. CÁC PDU TRONG SMPP 3. Trường command_id xác định PDU được sử dụng.4 SMPP Chỉ ra kiểu số địa chỉ của 4.2.4 4. Cú pháp “BIND_TRANSMITTER” Bảng 3-1. Tương tự như vậy. ESME Transmitter.1 4. Có 3 PDU của bind để hỗ trợ một vài các chế độ của lệnh: bind_transmitter.2. Một ESME được bind như một Transceiver được phép gửi các tin tới SMSC và nhận các tin từ SMSC qua một SMPP session đơn. nếu một SMSC không hỗ trợ bind_transceiver thì nó phải trả lại tin phản hồi thông báo sai mã lệnh và thử bind lại bằng bind_transmitter hoặc bind_receiver hoặc cả hai bind_transmitter và bind_receiver. Mật khẩu dùng để ESME chứng thực với SMSC Định danh của hệ thống ESME Tham chiếu 4.1. Receiver hoặc Transceiver. Nếu một SMSC không hỗ trợ bind_transmitter và bind_receiver thì nó phải trả lại một tin phản hồi thông báo sai mã lệnh và ESME thử bind lại lần nữa bằng bind_transceiver.1 4. Phải được thiết lập là NULL Thiết lập mã số tuần tự duy nhất tương ứng với bind_transmitter_resp Định danh của ESME yêu cầu bind như transmitter với SMSC.1.1. Một ESME có thể bind như một SMPP Transmitter và Receiver sử dụng các lệnh bind_transmitter và bind_receiver riêng biệt.PHẦN III. Một ESME được bind như một Transmitter được phép gửi cá tin ngắn tới SMSC và nhận các phản hồi tương ứng từ SMSC.2.3 Chỉ ra phiên bản của giao thức 4.1.2. Nó không được thiết kết để nhận các tin từ các SME. Nếu không biết thì thiết lập giá trị NULL. Lệnh “BIND” Mục đích của lệnh BIND là để đăng ký một thể hiện của một ESME với hệ thống SMSC và yêu cầu một SMPP session để đệ trình hoặc gửi tin.3 4. Một ESME được bind như Receiver được phép nhận tin ngắn từ SMSC và trả lại các phản hồi tới SMSC. ESME Receiver.2 4.5 ESME.1.2.1. Chỉ ra cách đánh số cho địa chỉ 4.2. Một ESME có thể bind như một Transmitter. Tên trường Kích thước Kiểu H E A D E R command_length command_id command_status 4 4 4 Integer Integer Integer sequence_numbera 4 Integer B O D Y system_idb Thay đổi max = 16 C-Octet String passwordc C-Octet String interface_version Thay đổi max = 9 Thay đổi max = 13 1 addr_ton 1 Integer addr_npi 1 Integer system_typed C-Octet String Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng cho PDU bind_transmitter. bind_transceiver và bind_receiver.6 26 . 3.2 4.s ESME Transceiver. Có thể xem BIND như là một mẫu đăng nhập để xác thực ESME trước khi thiết lập kết nối.1.

3.1 4. Địa chỉ của ESME. Không có yêu cầu đặc biệt đối với sequence_number.1.1.2 4.4 4.2.2 4.1.2.1. Integer Có cùng giá trị với bind_transmitter C-Octet String Định danh SMSC với ESME Tham chiếu 4. được dùng để phân loại hệ thống. Tên trường Kích thước Kiểu H E A D E R command_length command_id command_status 4 4 4 Integer Integer Integer sequence_numbera 4 Integer B system_idb Thay đổi C-Octet String Mô tả Kích thước của PDU Mã lệnh Không sử dụng cho PDU bind_receiver.1 CÁC THAM SỐ TÙY CHỌN Phiên bản SMPP được hỗ trợ bởi SMSC Phần body của bind_transmitter_resp sẽ không có nếu command_status chỉ ra lệnh không thành công. Nếu không biết thì thiết lập giá trị NULL. Bảng 3-2.1. c.1. 3. Phải được thiết lập là NULL Thiết lập mã số tuần tự duy nhất tương ứng với bind_receiver_resp Định danh của ESME Tham chiếu 4.1 27 .1. Nếu không biết thì thiết lập giá trị NULL. ví dụ “SMS_GW”.address_range Thay đổi max = 41 C-Octet String của ESME. d.3 4.7 a.1. Khuyến nghị sử dụng system_id để định danh thực thể bind. Nó được khuyến nghị sử dụng chế độ tự động tăng b. Định dạng của PDU bind_receiver. Cú pháp “BIND_RECEIVER” Bảng 3-3.4 4.1. system_type là tùy chọn.2.1 4. ESME có thể thiết lập giá trị NULL nếu SMSC cho phép.2. Tên trường H E A D E R B O D Y Kích thước command_length command_id command_status 4 4 4 sequence_number 4 system_id Thay đổi max = 16 sc_interface_versio n TLV Kiểu Mô tả Integer Integer Integer Kích thước của PDU Mã lệnh Chỉ ra trạng thái của PDU bind_transmitter gốc.3.3 4. 4. ví dụ : “BONG_DA”.1. Cú pháp “BIND_TRANSMITTER_RESP” PDU bind_transmitter_resp được sử dụng để trả lời yêu cầu bind_transmitter. password được sử dụng để xác thực. Định dạng của PDU bind_transmitter_resp.

4 4.1. Nó được khuyến nghị sử dụng chế độ tự động tăng b. d. password được sử dụng để xác thực.4 4. c.1. Khuyến nghị sử dụng system_id để định danh thực thể bind. Không có yêu cầu đặc biệt đối với sequence_number. Nếu không biết thì thiết lập giá trị NULL.2. 4.2.1. addr_npi and addr_range có thể được sử dụng bởi ESME để cung cấp sự nhận dạng các địa chỉ của SME mà ESME cung cấp.2 4. Định dạng PDU bind_receiver_resp. Cú pháp “BIND_RECEIVER_RESP” Bảng 3-4.interface_version max = 16 Thay đổi max = 9 Thay đổi max = 13 1 addr_tone 1 Integer addr_npie 1 Integer address_rangee Thay đổi max = 41 C-Octet String c password system_typed O D Y C-Octet String C-Octet String Integer Mật khẩu dùng để ESME chứng thực với SMSC Định danh của hệ thống ESME 4. Tên trường H E A D E R B O D Y Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer system_id Thay đổi max = 16 C-Octet String sc_interface_versio n TLV Mô tả Kích thước của PDU Mã lệnh Chỉ ra trạng thái của PDU bind_receiver gốc. a.3 4. e. ví dụ : “BONG_DA”.7 a. Nếu không biết thì thiết lập giá trị NULL. Nó được khuyến nghị sử dụng số tăng tự động. Các tham số addr_ton. được dùng để phân loại hệ thống. system_type là tùy chọn.2.5 4.2.1.4. ví dụ “SMS_GW”.6 4.2 Chỉ ra phiên bản của giao thức SMPP Chỉ ra kiểu số địa chỉ của ESME.2.2.1 CÁC THAM SỐ TÙY CHỌN Phiên bản SMPP được hỗ trợ bởi SMSC 28 .1.3 4. 3. Không có yêu cầu đặc biệt nào đối với sequence_number. Có cùng giá trị với bind_receiver Định danh SMSC với ESME Tham chiếu 4. ESME có thể thiết lập giá trị NULL nếu SMSC cho phép.2.1 4. Nếu không biết thì thiết lập giá trị NULL. Chỉ ra cách đánh số cho địa chỉ của ESME. Xem phần phụ lục A. Một địa chỉ đơn của ESME hoặc một khoảng địa chỉ.

3 4.5. Không có yêu cầu đặc biệt nào đối với sequence_number. Phải được thiết lập là NULL Thiết lập mã số tuần tự duy nhất tương ứng với bind_transceiver_resp Định danh của ESME Tham chiếu 4.3 4.2. được dùng để phân loại hệ thống.1. Định dạng của PDU bind_transceiver. Không có yêu cầu đặc biệt đối với sequence_number. Khuyến nghị sử dụng system_id để định danh thực thể bind. Nếu không biết thì thiết lập giá trị NULL.7 a. Nó được khuyến nghị sử dụng số tăng tự động. ví dụ : “BONG_DA”. 3. Một địa chỉ đơn của ESME hoặc một khoảng địa chỉ. c.1.5 4.2. ESME có thể thiết lập giá trị NULL nếu SMSC cho phép. Cú pháp “BIND_TRANSCEIVER_RESP” 29 .6 4. addr_npi and addr_range có thể được sử dụng bởi ESME để cung cấp sự nhận dạng các địa chỉ của SME mà ESME cung cấp.4 4. d. Các tham số addr_ton. Nếu không biết thì thiết lập giá trị NULL. ví dụ “SMS_GW”. a.2 Chỉ ra phiên bản của giao thức SMPP Chỉ ra kiểu số địa chỉ của ESME.2 4. system_type là tùy chọn. Cú pháp “BIND_TRANSCEIVER” Bảng 3-5. 4.2. Chỉ ra cách đánh số cho địa chỉ của ESME.2.1 Mật khẩu dùng để ESME chứng thực với SMSC Định danh của hệ thống ESME 4. Xem phần phụ lục A.1. Tên trường H E A D E R Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_numbera 4 Integer system_idb C-Octet String interface_version Thay đổi max = 16 Thay đổi max = 9 Thay đổi max = 13 1 addr_tone 1 Integer addr_npie 1 Integer address_rangee Thay đổi max = 41 C-Octet String passwordc system_typed B O D Y Kích thước C-Octet String C-Octet String Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng cho PDU bind_transceiver.1.6. 3.2.Phần body của bind_receiver_resp sẽ không có nếu command_status chỉ ra lệnh không thành công.1. e.2.2.1.4 4. Nó được khuyến nghị sử dụng chế độ tự động tăng b. password được sử dụng để xác thực.1 4. Nếu không biết thì thiết lập giá trị NULL.

Mã số tuần tự Định danh SMSC với ESME Được sử dụng bởi ESME để xác thực SMSC đã phát lệnh outbind.Bảng 3-6.1. Lệnh “OUTBIND” Lệnh này được sử dụng bởi SMSC để ra tín hiệu cho một ESME khởi tạo yêu cầu bind_receiver tới SMSC.1. unbind có thể xem như mẫu yêu cầu thoát của SMSC để đóng SMPP session hiện tại.1 4.2 4.2.7.1. Tên trường Kích thước Kiểu H E A D E R command_length command_id command_status 4 4 4 Integer Integer Integer B O D Y sequence_number system_id Integer C-Octet String passworda 4 Thay đổi max = 16 Thay đổi max = 9 C-Octet String Mô tả Kích thước của PDU Mã lệnh Không dùng. Thiết lập giá trị NULL.2.3 4.1. Cú pháp “OUTBIND” Bảng 3-7.1. Định dạng PDU bind_transceiver_resp.1. Lệnh “UNBIND” Mục đích của unbind là để loại bỏ thể hiện của một ESME khỏi SMSC và cho SMSC biết rằng ESME không cần đến kết nối mạng cho việc đệ trình hoặc truyền các tin.3 4.1 4.1. Tên trường H E A D E R B O D Y Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer system_id Thay đổi max = 16 C-Octet String sc_interface_versio n TLV Mô tả Kích thước của PDU Mã lệnh Chỉ ra trạng thái của PDU bind_transceiver gốc.7.1 4. Định dạng PDU outbind.2.1.1.4 4. ESME có thể thiết lập giá trị NULL nếu SMSC cho phép. Có cùng giá trị với bind_tranceiver Định danh SMSC với ESME Tham chiếu 4. Tham chiếu 4. 3.2 4.2. 30 .1. password được sử dụng để xác thực.4 4.1. 3. 3.1 CÁC THAM SỐ TÙY CHỌN Phiên bản SMPP được hỗ trợ bởi SMSC Phần body của bind_transceiver_resp sẽ không có nếu command_status chỉ ra lệnh không thành công.2 a.

1.3 4.1. Định dạng PDU generic_nack.1.1.4 3.1. còn không thì thiết lập giá trị NULL. Tham chiếu 4.3.2 4.1. không thích hợp với dữ liệu (quá ngắn hoặc quá dài) − Không biết command_id 3.3 4.4 3.1.3.1.1 4. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Chỉ ra lý do tại sao lại gửi generic_nack Có cùng giá trị với PDU gốc nếu phân tích được.1 4. Cú pháp “UNBIND” Bảng 4-8. 31 .2. Có cùng giá trị với unbind_resp Tham chiếu 4. PDU của “GENERIC_NACK” Thông báo từ chối một PDU được gửi mà có header không hợp lệ. Có cùng giá trị với unbind Tham chiếu 4.4 3. Thiết lập giá trị NULL.4.1. Một generic_nack sẽ trả lại trong các trường hợp sau: − Lỗi command_length. PDU submit_sm không hỗ trợ chế độ Transaction của tin. Cú pháp “UNBIND_RESP” Bảng 4-8.1 4. H E A D E R Tên trường Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Chỉ ra kết quả của yêu cầu unbind.2 4. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng. Lệnh “SUBMIT_SM” Lệnh này được sử dụng bởi ESME đệ trình một tin ngắn tới SMSC để truyền tin ngắn tới một SME. Định dạng PDU unbind.1.1.2.1. Định dạng PDU unbind.1.1.3.3 4. Cú pháp “GENERIC_NACK” Bảng 4-9.2.2 4.

2.12 4.5 4.3. Tham chiếu 4. Thiết lập NULL nếu yêu cầu gửi ngay.2 4.4 4. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.13 4.2. Nếu không biết. Nếu không biết. Thiết lập NULL nếu sử dụng cấu hình mặc định của SMSC Chỉ định SMSC gửi báo cáo Chỉ định tin ngắn có thể thay đổi được. Chỉ ra kiểu số cho địa chỉ nguồn.1.6 4.2.2.1. là duy nhất tương ứng với submit_sm_resp Chỉ ra dịch vụ ứng dụng SMS.14 4. Ví dụ địa chỉ của MS.17 4. thiết lập giá trị NULL. Chỉ đinh chế độ của tin Định danh giao thức Mức độ ưu tiên Đặt lịch cho SMSC gửi tin ngắn.6 4.3 4. Thiết lập giá trị NULL.9 4.2. thiết lập giá trị NULL.16 4.15 4.2. thiết lập giá trị NULL.1 4. Nếu không biết thì thiết lập giá trị NULL.2.8 4. Địa chỉ của SME.11 4.5 4.1. Chỉ ra cách đánh số cho địa chỉ nguồn.4. thực thể gửi tin.1. Mã số tuần tự. Chỉ ra kiểu số cho địa chỉ đích. Địa chỉ đích tin ngắn. Chỉ ra cách đánh số cho địa chỉ đích.18 32 .2.2. Định dạng PDU submit_sm. Tên trường H E A D E R C Á C Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi C-Octet max = 6 String T source_addr_ton H A M source_addr_npi 1 Integer 1 Integer S Ố source_addr B Ắ T Thay đổi C-Octet max = String 21 dest_addr_ton 1 Integer dest_addr_npi 1 Integer destination_addr Thay đổi max = 21 1 1 1 1 hoặc 17 C-Octet String validity_period 1 hoặc 17 C-Octet String registered_delivery 1 Integer replace_if_present_flag 1 Integer B U Ộ C esm_class protocol_id priority_flag schedule_delivery_time Integer Integer Integer C-Octet String Mô tả Kích thước của PDU Mã lệnh Không sử dụng.2. Nếu không biết thì thiết lập giá trị NULL. Cú pháp “SUBMIT_SM” Bảng 4-10.2.2.2. Nếu không biết.2. Khoảng thời gian hợp lệ của tin ngắn.1.

3.3.2.2.2.3. WCMP. tính bằng octet Thay đổi Octet String Nội dung tin ngắn.2.3.10 message_payload TLV Kiểu payload.3.2. Không sử dụng thì thiết lập giá trị NULL.34 4.2.3. 5.22 4.2 destination_port TLV 4. Tha msso này được đưa ra cho các ứng dụng WAP Số tham chiếu để kết nối các phần riêng của tin Số lượng tin ngắn trong tin cần nối lại Chỉ ra số tuần tự của một tin ngắn trong tin cần được nối lại Chỉ ra còn tin đi theo sau cần gửi tới SME.3.2 4.17 source_port TLV Chỉ ra cổng của ứng dụng liên quan đến địa chỉ nguồn của tin.20 4.3.3.data_coding sm_default_msg_id sm_length short_message user_message_referenc e 1 1 Integer Integer Chỉ ra cách mã dữ liệu Gửi tin ngắn có được từ danh sách đã được định nghĩa sẵn trên SMSC. Tham số này được đưa ra cho các ứng dụng WAP 4.2.2.2.24 4.3. payload_type TLV 4.20 source_addr_subunit TLV The subcomponent in the destination device which created the user data.254 254 octet. Nếu muốn gửi dữ liệu dài hơn thì phải dùng tham số message_payload và sm_length thiết lập bằng 0 CÁC THAM SỐ TÙY CHỌN ESME assigned message TLV reference number. ví dụ: WDP.23 4. Chứa tin được mở rộng. chiều dài có thể lên đến 64k 4.21 4.32 33 .17 4.2.2.2.17 4. 1 Integer Chiều dài tin ngắn.3.21 sar_msg_ref_num TLV sar_total_segments TLV sar_segment_seqnum TLV more_messages_to_sen d TLV Chỉ ra cổng ứng dụng liên quan đến địa chỉ đích của tin.2.2.2.22 4. nhưng còn tùy thuộc vào cấu hình mạng. 5.3.2. tối ra là 0 .

Cả hai phương pháp trên đều có thể được sử dụng để thay thế tin ngắn.15 4. H E A D E R B Tên trường Kích thước command_length command_id command_status sequence_number 4 4 4 4 message_id Thay đổi Kiểu Integer Integer Integer Integer Mô tả Tham chiếu 4.18 4.40 4. Đặc tính được thiết kế cho các hệ mơ hồ về địa chỉ nguồn như hệ thống voice mail.3 4.1. 3. source_addr_npi và source_addr.3.1.4.2 4. Trong trường hợp này. Địa chỉ nguồn bao gồm source_addr_ton.16 4.2.3.1.2.26 4. Chức năng thay thế có thể được kích hoạt trong PDU submit_sm.2. 3.19 3. thiết lập giá trị cho replace_if_present_flag = 1.1.3. ta thiết lập giá trị cho trường service_type một giá trị náo đó đã được định nghĩa.4.39 4. Trong trường hợp này.1. Cú pháp “SUBMIT_SM_RESP” Bảng 4-11. Nếu không tìm thấy tin nhắn cũ trong SMSC thì sẽ trả lại lỗi trong PDU replace_sm_resp.3. Dữ liệu chứa trong tin ngắn cũ được tìm thấy trong SMSC phải có địa chỉ nguồn.3.3. Định dạng PDU submit_sm_resp.1.1.23 34 . quản trị của SMSC có thể định nghĩa ra một kiểu dịch vụ đặc biệt để cung cấp chức năng thay thế thông qua trường service_type.4 Kích thước của PDU Mã lệnh Chỉ ra kết quả của submit_sm Có cùng giá trị trong PDU submit_sm gốc.27 4.3. Địa chỉ chỉ nguồn và đích PDU submit_sm gồm có cả hai thông tin về địa chỉ nguồn và đích.41 4.4.2.3.3.3.1 4. Địa chỉ đích bao gồm dest_addr_ton.2. để kích hoạt chức năng thay thế.14 4.privacy_indicator source_subaddress dest_subaddress user_response_code TLV TLV TLV TLV display_time TLV sms_signal TLV ms_validity TLV number_of_messages TLV alert_on_msg_delivery TLV language_indicator TLV Chỉ ra mức riêng tư Địa chỉ nguồn phụ Địa chỉ đích phụ Một mã phản hồi của người sử dụng Hỗ trợ MS hiện thời gian cùng với tin Chỉ ra cơ chế thông báo khi MS nhận được tin Chỉ ra thông tin về tính hợp lệ của tin cho MS Chỉ ra số lượng tin được lưu trong một mail box Yêu cầu báo cáo bằng một tin báo cáo Chỉ ra ngôn ngữ hiển thị tin 4. C-Octet String Chứa ID của tin đã dc đệ trình 4.2. dest_addr_npi và destination_addr.2. Một ESME Transmitter có thể nhập giá trị NULL cho các trường địa chỉ nguồn. địa chỉ đích và service_type phải giống như tin nhắn mới được đệ trình trong submit_sm mới.2.2. SMSC có thể thay thế bằng một địa chỉ mặc định cho mỗi ESME. Cách khác.2.2.2.2. Quá trình thay thế tin trong “SUBMIT_SM” Giao thức SMPP đưa lệnh replace_sm cho việc thay thế một tin ngắn đã được đệ trình trước đó mà chưa dc truyền đến đích.

2. Nếu không biết. Địa chỉ của SME.8 4. là duy nhất tương ứng với submit_multi_resp Chỉ ra dịch vụ ứng dụng SMS. và/hoặc tên các danh sách gửi tin Chỉ đinh chế độ của tin Định danh giao thức Mức độ ưu tiên Đặt lịch cho SMSC gửi tin ngắn. Tên trường H E A D E R C Á C Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi max = 6 C-Octet String 1 Integer 1 Integer T source_addr_ton H A M source_addr_npi S Ố source_addr B Ắ T Thay đổi max = 21 C-Octet String number_of_dests 1 Integer dest_address(es) Thay đổi esm_class protocol_id priority_flag schedule_delivery_time 1 1 1 1 hoặc 17 B U Ộ C Integer Integer Integer C-Octet String Mô tả Kích thước của PDU Mã lệnh Không sử dụng.1. Tham chiếu 4.11 4.1 4. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.12 4.2. Phần Body của submit_sm_resp sẽ không có nếu command_status có giá trị khác không.5.2.1.2.1. Thiết lập giá trị NULL. thiết lập giá trị NULL.1. Chỉ ra kiểu số cho địa chỉ đích. PDU submit_sm không hỗ trợ chế độ Transaction của tin.1. 3. Nếu không biết.2. Mã số tuần tự. Nếu không biết. bỏ qua hay thay thế một tin.13 4.5. thiết lập giá trị NULL. Chỉ ra cách đánh số cho địa chỉ nguồn.24 Bảng 3-13 4. thực thể gửi tin.3 4.6 4. Định dạng PDU submit_multi.2 4. Nếu không biết thì thiết lập giá trị NULL.14 4. thiết lập giá trị NULL.4 4. Nó có thể được sử dụng để truy vấn trạng thái.5 4.2. Chỉ ra kiểu số cho địa chỉ nguồn. 3. Chứa một hoặc nhiều địa chỉ của SME.2.max = O D Y trong SMSC.2.2. Lệnh “SUBMIT_MULTI” Lệnh submit_multi dc sử dụng để đệ trình một tin mà được gửi cho nhiều người nhận.15 35 . Thiết lập NULL nếu yêu cầu gửi ngay. Cú pháp “SUBMIT_MULTI” Bảng 4-12.

3.2. Không sử dụng thì thiết lập giá trị NULL. Tha msso này được đưa ra cho các ứng dụng WAP Số tham chiếu để kết nối các phần riêng của tin Số lượng tin ngắn trong tin cần nối lại Chỉ ra số tuần tự của một tin ngắn trong tin cần được nối lại Chỉ ra còn tin đi theo sau 4.2.2.2.3.20 danh sách đã được định nghĩa sẵn trên SMSC.17 reference number.23 4.2 4. tính 4.19 1 Integer Gửi tin ngắn có được từ 4. 5. tối ra là 4.17 source_port TLV Chỉ ra cổng của ứng dụng liên quan đến địa chỉ nguồn của tin.18 thay đổi được.2.24 4.2.3. Tham số này được đưa ra cho các ứng dụng WAP 4.20 source_addr_subunit TLV The subcomponent in the destination device which created the user data.2.2 destination_port TLV 4.34 36 .3.2.3.17 1 Integer Chỉ định tin ngắn có thể 4.2.22 4.2.3.2.2.22 0 . 1 Integer Chiều dài tin ngắn.3. Nếu muốn gửi dữ liệu dài hơn thì phải dùng tham số message_payload và sm_length thiết lập bằng 0 CÁC THAM SỐ TÙY CHỌN ESME assigned message TLV 4.2.2.3.2.validity_period registered_delivery replace_if_present_flag data_coding sm_default_msg_id sm_length short_message user_message_referenc e 1 hoặc 17 C-Octet String Khoảng thời gian hợp lệ của 4. Thiết lập NULL nếu sử dụng cấu hình mặc định của SMSC 1 Integer Chỉ định SMSC gửi báo cáo 4. nhưng còn tùy thuộc vào cấu hình mạng.21 sar_msg_ref_num TLV sar_total_segments TLV sar_segment_seqnum TLV more_messages_to_sen TLV Chỉ ra cổng ứng dụng liên quan đến địa chỉ đích của tin.2.3. 5.2.254 254 octet. 1 Integer Chỉ ra cách mã dữ liệu 4.3.21 bằng octet Thay đổi Octet String Nội dung tin ngắn.16 tin ngắn.

6 chỉ đích.2.3.32 4. ví dụ: WDP.14 4.2.5 Chỉ ra kiểu số cho địa chỉ đích. payload_type TLV message_payload TLV privacy_indicator source_subaddress dest_subaddress user_response_code TLV TLV TLV TLV display_time TLV sms_signal TLV ms_validity TLV number_of_messages TLV alert_on_msg_delivery TLV language_indicator TLV Kiểu payload.2.2.10 4. Định nghĩa địa chỉ đích dest_address Bảng 4-13.2. Nếu không biết.2.27 4. Nếu không biết thì thiết lập giá trị NULL. Chứa tin được mở rộng.3.3. 37 . chiều dài có thể lên đến 64k Chỉ ra mức riêng tư Địa chỉ nguồn phụ Địa chỉ đích phụ Một mã phản hồi của người sử dụng Hỗ trợ MS hiện thời gian cùng với tin Chỉ ra cơ chế thông báo khi MS nhận được tin Chỉ ra thông tin về tính hợp lệ của tin cho MS Chỉ ra số lượng tin được lưu trong một mail box Yêu cầu báo cáo bằng một tin báo cáo Chỉ ra ngôn ngữ hiển thị tin 4. Ví 4. Chỉ ra cách đánh số cho địa 4.16 4.3.2.40 4. Địa chỉ đích tin ngắn.3.18 4.2.2. WCMP.3.2.3.2.39 4.9 dụ địa chỉ của MS.1.41 4.1.19 3.3. thiết lập giá trị NULL.2.2.3. Định nghĩa dest_address Tên trường dest_flag Kích thước 1 Kiểu Integer SME Address hoặc Distribution List Name Mô tả Chỉ ra địa chỉ đích là tên danh sách gửi tin hay địa chỉ của SME Phụ thuộc vào trường dest_flag Tham chiếu 4.2.2.25 Bảng 3-14 và 3-15 Bảng 4-14. Định nghĩa SME_dest_address Tên trường Kích thước Kiểu dest_addr_ton 1 Integer dest_addr_npi 1 Integer destination_addr Thay đổi C-Octet max = String Mô tả Tham chiếu 4.d cần gửi tới SME.2.26 4.15 4.3.5.3.3.

2.2.3 38 . bỏ qua hay thay thế một tin.1.4 4.26 Bảng 3-17 3. Interger Số lượng tin được đệ trình tới SMSC không thành công Chứa 1 hoặc nhiều địa chỉ của SME và/hoặc tên danh sách gửi tin không thành công Tham chiếu 4.1. Định nghĩa danh sách gửi tin Bảng 4-15. Ví 4. Nó có thể được sử dụng để truy vấn trạng thái.5. Định nghĩa danh sách gửi tin Tên trường dl_name Kích Kiểu thước Thay đổi C-Octet max = String 21 Mô tả Tên của danh sách gửi tin Tham chiếu 5. Định dạng PDU submit_multi_resp. Cú pháp “SUBMIT_MULTI_RESP” Bảng 4-16. Nếu không biết thì thiết lập giá trị NULL. C-Octet String Chứa ID của tin đã được đệ trình trong SMSC.2.2 4. Nếu không biết.1.2. Địa chỉ đích tin ngắn.2.21 3.2.1.1.2.9 dụ địa chỉ của MS.1. Truyền không thành công Bảng 4-17.5 Chỉ ra kiểu số cho địa chỉ đích.3 4.2.5. thiết lập giá trị NULL. H E A D E R B O D Y Tên trường Kích thước command_length command_id command_status sequence_number 4 4 4 4 message_id Thay đổi max = no_unsuccess 1 unsuccess_sme(s) Thay dổi Kiểu Mô tả Integer Integer Integer Integer Kích thước của PDU Mã lệnh Chỉ ra kết quả của submit_sm Có cùng giá trị trong PDU submit_sm gốc. Địa chỉ gửi không thành công của SME Tên trường Kích thước Kiểu dest_addr_ton 1 Integer dest_addr_npi 1 Integer destination_addr Thay đổi C-Octet max = String 21 4 Integer error_status_code Mô tả Tham chiếu 4.1. Chỉ ra cách đánh số cho địa 4.27 3.5.2.23 5.6 chỉ đích.1 4. Chỉ ra trạng thái thàh công hay thất bại 5.

6.1.3 4.1.5 4. − SMSC Delivery Acknowledgement. Mã số tuần tự.2. Chỉ đinh chế độ của tin Tham chiếu 4. Lệnh “DELIVER_SM” Lệnh deliver_sm được sử dụng bởi SMSC để gửi một tin tới ESME.5 4.2.3. Chỉ ra kiểu số cho địa chỉ đích. Chỉ ra cách đánh số cho địa chỉ đích. − Intermediate Notification. thiết lập giá trị NULL. Nếu không biết. thiết lập giá trị NULL. Định dạng PDU deliver_sm.2 4.11 4. Trường short_message chứa nội dung báo cáo. − SME Manual/User Acknowledgement.4 4.2. thực thể gửi tin. Tên trường H E A D E R C Á C Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi C-Octet max = 6 String T source_addr_ton H A M source_addr_npi 1 Integer 1 Integer S Ố source_addr B Ắ T Thay đổi C-Octet max = String 21 dest_addr_ton 1 Integer dest_addr_npi 1 Integer destination_addr Thay đổi C-Octet max = String 21 1 Integer B U Ộ C esm_class Mô tả Kích thước của PDU Mã lệnh Không sử dụng.8 4. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.2.1. Trường short_message chứa nội dung báo cáo. Chỉ ra kiểu số cho địa chỉ nguồn.2.1 4.9 4. 3. Là một báo cáo của một tin đã được đệ trình trước đó của lệnh submit_sm với tham số registered_delivery được thiết lập. Cú pháp “DELIVER_SM” Bảng 4-18.2. Nếu không biết. thiết lập giá trị NULL. Nếu không biết thì thiết lập giá trị NULL.2.12 39 . Thiết lập giá trị NULL.6 4. Ví dụ địa chỉ của MS. Địa chỉ đích tin ngắn. Nếu không biết. Các loại tin được truyền: − SMSC Delivery Receipt. Chỉ ra cách đánh số cho địa chỉ nguồn. Trường short_message chứa nội dung báo cáo. là duy nhất tương ứng với delivert_sm_resp Chỉ ra dịch vụ ứng dụng SMS.2. Trường short_message chứa nội dung báo cáo. Nếu không biết thì thiết lập giá trị NULL.6 4.1.1.6. Địa chỉ của SME.

2.2.20 4. Nếu muốn gửi dữ liệu dài hơn thì phải dùng tham số message_payload và sm_length thiết lập bằng 0 CÁC THAM SỐ TÙY CHỌN ESME assigned message TLV reference number.2.15 4.3. tối ra là 0 .254 254 octet.3.22 4.2. 1 Integer Chỉ ra cách mã dữ liệu 1 Integer Gửi tin ngắn có được từ danh sách đã được định nghĩa sẵn trên SMSC. Không sử dụng thì thiết lập giá trị NULL.17 source_port TLV Chỉ ra cổng của ứng dụng liên quan đến địa chỉ nguồn của tin.2 4.17 4.3.18 4. 5.2.2.2.3. nhưng còn tùy thuộc vào cấu hình mạng. 1 Integer Chiều dài tin ngắn.2.13 4.16 4.2 destination_port TLV 4.17 4.3.21 4.2.20 source_addr_subunit TLV The subcomponent in the destination device which created the user data.2. Thiết lập NULL nếu yêu cầu gửi ngay.2.protocol_id priority_flag schedule_delivery_time validity_period registered_delivery replace_if_present_flag data_coding sm_default_msg_id sm_length short_message user_message_referenc e 1 1 1 hoặc 17 Integer Integer C-Octet String Định danh giao thức Mức độ ưu tiên Đặt lịch cho SMSC gửi tin ngắn.2.2.2. 1 hoặc C-Octet Khoảng thời gian hợp lệ 17 String của tin ngắn.2. 5.17 4.21 sar_msg_ref_num TLV Chỉ ra cổng ứng dụng liên quan đến địa chỉ đích của tin.2.3.2.14 4. Tham số này được đưa ra cho các ứng dụng WAP 4. Thiết lập NULL nếu sử dụng cấu hình mặc định của SMSC 1 Integer Chỉ định SMSC gửi báo cáo 1 Integer Chỉ định tin ngắn có thể thay đổi được.3. Tha msso này được đưa ra cho các ứng dụng WAP Số tham chiếu để kết nối các phần riêng của tin 4.22 40 . tính bằng octet Thay đổi Octet String Nội dung tin ngắn.

2. Tên trường H E A D E R B O D Y Kích thước command_length command_id command_status 4 4 4 sequence_number 4 message_id 1 Kiểu Integer Integer Integer Mô tả Kích thước của PDU Mã lệnh Chỉ ra kết quả của delivert_sm Integer Có cùng giá trị trong PDU deliver_sm gốc.2.3.2.2.23 41 .2.15 4. 4.2.3.3.2.39 4.23 Kiểu payload. thiết lập giá trị NULL. Chứa tin được mở rộng.2.6.18 4.32 4.3.19 3.16 4. chiều dài có thể lên đến 64k Chỉ ra mức riêng tư Địa chỉ nguồn phụ Địa chỉ đích phụ Một mã phản hồi của người sử dụng Hỗ trợ MS hiện thời gian cùng với tin Chỉ ra cơ chế thông báo khi MS nhận được tin Chỉ ra thông tin về tính hợp lệ của tin cho MS Chỉ ra số lượng tin được lưu trong một mail box Yêu cầu báo cáo bằng một tin báo cáo Chỉ ra ngôn ngữ hiển thị tin 4.3 4. Tham chiếu 4.3.3.41 4.2. Cú pháp “DELIVER_SM_RESP” Bảng 4-19.14 4.3.3.27 4.3.2.1.3.2.2. C-Octet String Trường này không sử dụng.2.2 4.1 4.40 4.2.2.3. ví dụ: WDP. Định dạng PDU deliver_sm_resp.3.4 4.1.2.sar_total_segments TLV sar_segment_seqnum TLV more_messages_to_sen d TLV payload_type TLV message_payload TLV privacy_indicator source_subaddress dest_subaddress user_response_code TLV TLV TLV TLV display_time TLV sms_signal TLV ms_validity TLV number_of_messages TLV alert_on_msg_delivery TLV language_indicator TLV Số lượng tin ngắn trong tin cần nối lại Chỉ ra số tuần tự của một tin ngắn trong tin cần được nối lại Chỉ ra còn tin đi theo sau cần gửi tới SME.3.24 4. WCMP.1.1.3.2.34 4.10 4.26 4.3.

2. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.2. Lệnh “DATA_SM” Lệnh data_sm được sử dụng để truyền dữ liệu giữa SMSC và ESME.13 4. Integer Integer Integer C-Octet Chỉ đinh chế độ của tin Định danh giao thức Mức độ ưu tiên Đặt lịch cho SMSC gửi tin C Á C T source_addr_ton H A M source_addr_npi B U Ộ C esm_class protocol_id priority_flag schedule_delivery_time 1 Integer 1 Integer Tham chiếu 4.15 42 .1. Địa chỉ đích tin ngắn. thiết lập giá trị NULL. Thiết lập giá trị NULL. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi C-Octet max = 6 String Mô tả S Ố source_addr B Ắ T Thay đổi C-Octet max = String 21 dest_addr_ton 1 Integer dest_addr_npi 1 Integer destination_addr Thay đổi max = 21 1 1 1 1 hoặc C-Octet String Kích thước của PDU Mã lệnh Không sử dụng.1.5 4.2 4.1. Mã số tuần tự. Cú pháp “DATA_SM” Bảng 4-20.2. Nếu không biết. Định dạng PDU data_sm. Ví dụ địa chỉ của MS.7. Chỉ ra cách đánh số cho địa chỉ nguồn.12 4. data_sm có thể được sử dụng để truyền các loại tin sau: SMSC Delivery Receipt.2. Nếu không biết thì thiết lập giá trị NULL. Nếu không biết thì thiết lập giá trị NULL. thiết lập giá trị NULL. SMSC cũng có thể sử dụng lệnh này để truyền một tin từ MS tới ESME.1.5 4. SME Delivery Acknowledgement.9 4.1.2.1 4.2. là duy nhất tương ứng với data_sm_resp Chỉ ra dịch vụ ứng dụng SMS.14 4.8 4.2. Chỉ ra kiểu số cho địa chỉ đích. Nếu không biết.2.7. Chỉ ra cách đánh số cho địa chỉ đích. Nó có thể được sử dụng bởi cả hai SMSC và ESME. ESME có thể sử dụng lệnh này để truyền một tin tới một MS. SME Manual/User Acknowledgement.6 4. thực thể gửi tin.11 4.4 4. Nếu không biết. thiết lập giá trị NULL.2. Chỉ ra kiểu số cho địa chỉ nguồn.3 4. Nó là một dạng lệnh mới dùng cho các ứng dụng tương tác với nhau trong khuôn khổ của môi trường WAP.3. 3. data_sm là một dạng khác của submit_sm và deliver_sm. Intermediate Notification. Địa chỉ của SME.6 4.2.2.

2.17 4.2.2.2.3. 5. Nếu muốn gửi dữ liệu dài hơn thì phải dùng tham số message_payload và sm_length thiết lập bằng 0 CÁC THAM SỐ TÙY CHỌN ESME assigned message TLV reference number.2. Thiết lập NULL nếu yêu cầu gửi ngay.20 4. Thiết lập NULL nếu sử dụng cấu hình mặc định của SMSC 1 Integer Chỉ định SMSC gửi báo cáo 1 Integer Chỉ định tin ngắn có thể thay đổi được.254 254 octet.2.2.24 43 .2.22 4.16 4. tối ra là 0 . tính bằng octet Thay đổi Octet String Nội dung tin ngắn.18 4. 1 Integer Chỉ ra cách mã dữ liệu 1 Integer Gửi tin ngắn có được từ danh sách đã được định nghĩa sẵn trên SMSC.3.3.3.3.2 4. Tha msso này được đưa ra cho các ứng dụng WAP Số tham chiếu để kết nối các phần riêng của tin Số lượng tin ngắn trong tin cần nối lại Chỉ ra số tuần tự của một 4.20 source_addr_subunit TLV The subcomponent in the destination device which created the user data.23 4. Tham số này được đưa ra cho các ứng dụng WAP 4. nhưng còn tùy thuộc vào cấu hình mạng.17 validity_period registered_delivery replace_if_present_flag data_coding sm_default_msg_id sm_length short_message user_message_referenc e String ngắn.2. Không sử dụng thì thiết lập giá trị NULL.21 4.2.2.2.3.2.17 4.21 sar_msg_ref_num TLV sar_total_segments TLV sar_segment_seqnum TLV Chỉ ra cổng ứng dụng liên quan đến địa chỉ đích của tin.3.2.3.17 4. 5.3.17 source_port TLV Chỉ ra cổng của ứng dụng liên quan đến địa chỉ nguồn của tin.2.2.22 4. 1 Integer Chiều dài tin ngắn.2 destination_port TLV 4. 1 hoặc C-Octet Khoảng thời gian hợp lệ 17 String của tin ngắn.

3.3.3.2.26 4.16 4. chiều dài có thể lên đến 64k Chỉ ra mức riêng tư Địa chỉ nguồn phụ Địa chỉ đích phụ Một mã phản hồi của người sử dụng Hỗ trợ MS hiện thời gian cùng với tin Chỉ ra cơ chế thông báo khi MS nhận được tin Chỉ ra thông tin về tính hợp lệ của tin cho MS Chỉ ra số lượng tin được lưu trong một mail box Yêu cầu báo cáo bằng một tin báo cáo Chỉ ra ngôn ngữ hiển thị tin 4.3.2.15 4.2.39 4.1 4.2.11 4.40 4.2.34 Kiểu payload.3.3.4 4.2.3.7.18 4.32 4.2. ví dụ: WDP.2.3. Cú pháp “DATA_SM_RESP” Bảng 4-21.31 4.10 Mô tả Tham chiếu 4.2 4.1.2.19 3.28 44 .more_messages_to_sen d TLV payload_type TLV message_payload TLV privacy_indicator source_subaddress dest_subaddress user_response_code TLV TLV TLV TLV display_time TLV sms_signal TLV ms_validity TLV number_of_messages TLV alert_on_msg_delivery TLV language_indicator TLV tin ngắn trong tin cần được nối lại Chỉ ra còn tin đi theo sau cần gửi tới SME.3.3 4.1.3.2. 4.3.2.2.3.2.14 4.1.2.3.3.33 4.3. Tên trường H E A D E R B O D Y Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer message_id 1 C-Octet String delivery_failure_reasona network_error_codea additional_status_info_text dpf_resulta Kích thước của PDU Mã lệnh Chỉ ra kết quả của data_sm Có cùng giá trị trong PDU data_sm gốc.2.27 4.41 4.2.3. Chứa tin được mở rộng.1.2.2. Chứa ID của tin THAM SỐ TÙY CHỌN TLV Chỉ ra lý do thất bại TLV mã lỗi mạng TLV mô tả lỗi TLV Chỉ ra cờ Deliver Pending 4. Định dạng PDU data_sm_resp. WCMP.3.2.23 4.

Nếu không biết. thiết lập giá trị NULL.1. thực thể gửi tin.2. Tên trường H E A D E R T H A M S Ố B Ắ T B U Ộ C Kích thước command_length command_id command_status 4 4 4 sequence_number 4 message_id source_addr_ton 1 1 source_addr_npi 1 source_addr Thay đổi max = 21 Kiểu Mô tả Integer Integer Integer Kích thước của PDU Mã lệnh Không sử dụng.1 4. Tham chiếu 4. C-Octet String Địa chỉ của SME.5 4. khi đó địa chỉ nguồn trong query_sm cũng phải được thiết lập giá trị NULL.23 4. Địa chỉ nguồn trong submit_sm. 3.8 3. C-Octet String Chứa ID của tin cần truy vấn Tham chiếu 4. thiết lập giá trị NULL.1. Cú pháp “QUERY_SM_RESP” Bảng 4-23.2. Tên trường H E A D E R T Kích thước command_length command_id command_status 4 4 4 sequence_number 4 message_id Thay đổi Kiểu Integer Integer Integer Mô tả Kích thước của PDU Mã lệnh Chỉ ra kết quả của lệnh truy vấn Integer Có cùng giá trị trong PDU query_sm.8.4 4.1.8.1 4.2.1.2. Integer Chỉ ra cách đánh số cho địa chỉ nguồn.23 45 . Cú pháp “QUERY_SM” Bảng 4-22. 3. Nếu không biết. C-Octet String Chứa ID của tin cần truy vấn Integer Chỉ ra kiểu số cho địa chỉ nguồn.1.3 4. Lệnh này sử dụng message_id và địa chỉ nguồn. data_sm.Flag có được thiết lập hay không a.1. Các tham số này chỉ có liên quan đến trong chế độ Transaction.6 4.8.1.4 4. Định dạng PDU query_sm_resp.2. submit_multi gốc mặc định được thiết lập là NULL. thiết lập giá trị NULL Integer Có cùng giá trị trong PDU query_sm_resp.2. Định dạng PDU query_sm.2 4. Lệnh “QUERY_SM” ESME sử dụng lệnh này để truy vấn trạng thái của tin ngắn được đệ trình trước đó.2 4.3 4.1. Nếu không biết thì thiết lập giá trị NULL.1.

2.1 4.1.H A final_date M S Ố B message_state Ắ error_code T B U Ộ C max = 65 1 hoặc 17 1 1 C-Octet String Thời gian mà trạng thái cuối cùng của tin được truy vấn.1. Cú pháp “CANCEL_SM” Bảng 4-24.8 46 .1 3.11 4. 3. Lệnh này có thể áp dụng cho một tin.6 4.3 4. Nếu không biết.28 5. thực thể gửi tin.23 4. đích và service_type.2.2. thiết lập giá trị NULL Integer Có cùng giá trị trong PDU cancel_sm_resp. C-Octet String Chứa ID của tin cần truy vấn Integer Chỉ ra kiểu số cho địa chỉ nguồn.2. Tên trường H E A D E R T H A M S Ố B Ắ T B U Ộ C Kích thước command_length command_id command_status 4 4 4 sequence_number 4 service_type Thay đổi max = 6 message_id source_addr_ton 1 1 source_addr_npi 1 source_addr Thay đổi max = 21 Kiểu Integer Integer Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng. Integer Chỉ ra cách đánh số cho địa chỉ nguồn. thì địa chỉ nguồn trong cancel_sm cũng phải là NULL.9.9. Tham chiếu 4.1 4. Nếu chưa lần nào được truy vấn sẽ có giá trị NULL Integer Chỉ ra trạng thái của tin Integer Mã lỗi 6. thiết lập giá trị NULL. Nếu không biết thì thiết lập giá trị NULL.1.1.2 4. − Nếu message_id được thiết lập thì ID của tin được đệ trình trước đó sẽ bị bỏ qua. service_type là một tùy chọn thêm.2. − Nếu message_id là NULL thì tất cả các tin có địa chỉ đích và nguồn giống như trong PDU sẽ bị bỏ qua. C-Octet String Địa chỉ của SME.4 4. C-Octet String Chỉ ra dịch vụ ứng dụng SMS.1. hoặc tất cả các tin trong một nguồn. data_sm hoặc submit_multi được mặc định là NULL. Định dạng PDU cancel_sm. Lệnh “CANCEL_SM” ESME sử dụng lệnh này để bỏ qua một hoặc nhiều tin ngắn được đệ trình trước đó mà vẫn chưa gửi đi. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.1.5 4. Khi địa chỉ nguồn trong submit_sm.2.

1. 3. Cú pháp “REPLACE_SM” Bảng 4-26. Định dạng PDU cancel_sm_resp. Nếu không biết. Nếu không biết thì thiết lập giá trị NULL.1.1.2 4. Chỉ ra dịch vụ ứng dụng 4.10.1.2.1. thiết lập giá trị NULL.5 4. Ví dụ 4. C-Octet String Địa chỉ đích tin ngắn.3 Kích thước của PDU Mã lệnh Không sử dụng.1.1.1 4. thiết lập giá trị NULL. Tham chiếu 4.1 4.10. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Chỉ định kết quả của yêu cầu cancel_sm Có cùng giá trị trong PDU cancel_sm.2. Cú pháp “CANCEL_SM_RESP” Bảng 4-25.9 địa chỉ của MS.2.11 SMS. 3. thiết lập giá trị NULL Có cùng giá trị trong PDU 4. Chỉ ra cách đánh số cho địa 4.9. Integer Chỉ ra cách đánh số cho địa 4.5 đích.dest_addr_ton 1 dest_addr_npi 1 destination_addr Thay đổi max = 21 Nếu không biết.2.1. Tên trường H E A D E R T H A M S Ố B Ắ T B Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi max = 6 C-Octet String message_id 1 source_addr_ton 1 C-Octet String Integer source_addr_npi 1 Integer Mô tả Tham chiếu 4. Nếu không biết. Integer Chỉ ra kiểu số cho địa chỉ 4.2.2 4. Định dạng PDU replace_sm. Giá trị NULL là giá trị cấu hình mặc địch của SMSC.4 3.3 4.2.1.2. Chứa ID của tin cần truy vấn 4. Cơ chế cũng giống như lệnh cancel_sm. Lệnh “REPLACE_SM” ESME sử dụng lệnh này để thay thế một tin nhắn được đệ trình trước đó mà vẫn chưa được gửi đi.23 Chỉ ra kiểu số cho địa chỉ nguồn.6 47 .6 chỉ đích.4 cancel_sm_resp.2. thiết lập giá trị NULL.

2.2.1.1. Định dạng PDU replace_sm_resp.2. 4.1. Địa chỉ của SME. tối ra là 254 octet. Cú pháp “ENQUIRE_LINK” Bảng 4-28.16 4. thiết lập giá trị NULL.source_addr Thay đổi C-Octet max = 21 String schedule_delivery_tim e 1 hoặc 17 C-Octet String validity_period 1 hoặc 17 C-Octet String registered_delivery sm_default_msg_id 1 1 Integer Integer sm_length 1 Integer short_message Thay đổi 0 . Nếu không biết. nhưng còn tùy thuộc vào cấu hình mạng.22 3.1.8 4. Cú pháp “REPLACE_SM_RESP” Bảng 4-27.4 3.2.20 4. tính bằng octet Nội dung tin ngắn mới. thiết lập Tham chiếu 4.21 4.1.254 Octet String U Ộ C chỉ nguồn.1.2.2 4. 3.1. Khoảng thời gian hợp lệ của tin ngắn.3 4. Chiều dài tin ngắn.17 4.1.2. Thiết lập NULL nếu sử dụng cấu hình mặc định của SMSC Chỉ định SMSC gửi báo cáo Gửi tin ngắn có được từ danh sách đã được định nghĩa sẵn trên SMSC.3 48 . Lệnh “ENQUIRE_LINK” Lệnh này được một trong hai ESME hoặc SMSC sử dụng để cung cấp một sự tin cậy của kết nối giữa ESME và SMSC.11. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Chỉ định kết quả của yêu cầu replace_sm Có cùng giá trị trong PDU replace_sm. Không sử dụng thì thiết lập giá trị NULL.2. Thiết lập NULL nếu yêu cầu gửi ngay. Đặt lịch cho SMSC gửi tin ngắn.1 4.2. Nếu không biết thì thiết lập giá trị NULL. H E A D E Tên trường command_length command_id command_status Kích thước 4 4 4 Kiểu Integer Integer Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng.11. thực thể gửi tin.10. Tham chiếu 4.15 4. Định dạng PDU enquire_link.2 4.1 4.

Tên trường H E A D E R T H A M S Ố B Ắ T B U Ộ C Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer service_type Thay đổi max = 6 C-Octet String message_id 1 source_addr_ton 1 C-Octet String Integer source_addr_npi 1 Integer source_addr Thay đổi max =21 C-Octet String esme_addr_ton 1 Integer Mô tả Kích thước của PDU Mã lệnh Không sử dụng. 3.1. Tham chiếu 4. Định dạng PDU enquire_link_resp.23 4.4 3.1.11. Tên trường H E A D E R Kích thước Kiểu command_length command_id command_status 4 4 4 Integer Integer Integer sequence_number 4 Integer Mô tả Kích thước của PDU Mã lệnh Thiết lập giá trị ESME_ROK nếu thành công Có cùng giá trị trong PDU enquire_link. Địa chỉ của SME.1.1.6 4.4 4.1.1 4. Lệnh này sẽ không có PDU alert_notification_resp. thiết lập giá trị NULL Có cùng giá trị trong PDU cancel_sm_resp. Lệnh “ALERT_NOTIFICATION” Lệnh này được sử dụng bởi SMSC khi SMSC nhận thấy một MS đã sẵn sàng và cờ Delivery Pending Flag được thiết lập từ một lệnh data_sm trước đó.2. Nếu không biết. Cú pháp “ALERT_NOTIFICATION” Bảng 4-30.1.2 4. Chỉ ra cách đánh số cho địa chỉ nguồn.2. Chỉ ra kiểu số cho địa chỉ Tham chiếu 4. Định dạng PDU alert_notification. thiết lập giá trị NULL.8 4.R sequence_number 4 Integer NULL Có cùng giá trị trong PDU enquire_link_resp.1.2 4.5 4.2. Giá trị NULL là giá trị cấu hình mặc địch của SMSC. Cú pháp “ENQUIRE_LINK_RESP” Bảng 4-29.2. Chứa ID của tin cần truy vấn Chỉ ra kiểu số cho địa chỉ nguồn.12.1.1. thiết lập giá trị NULL.1.11 4.2.1 4. thực thể gửi tin.3 4. Chỉ ra dịch vụ ứng dụng SMS.2.3 4.5 49 .12. Nếu không biết. Nếu không biết thì thiết lập giá trị NULL.2. 4.4 3.

Nếu không biết thì thiết lập giá trị NULL.2. Ví dụ max =21 String địa chỉ của MS. thiết lập giá trị NULL.2.6 4.20 50 .2.10 4. THAM SỐ TÙY CHỌN TLV Trạng thái của MS 4. Thay đổi C-Octet Địa chỉ đích tin ngắn. Nếu không biết.esme_addr_npi esme_addr ms_availability_status đích.3. 1 Integer Chỉ ra cách đánh số cho địa chỉ đích.

… Mỗi lệnh đều có mã riêng. tính bằng octet. Các tham số trong Header của lệnh 4. command_length Tham số command_length xác định chiều dài của tin. Các phản hồi cũng sử dụng các mã lệnh này.PHẦN IV.1.1.0x00000020 0x80000016 . Các yêu cầu sử dụng mã lệnh gốc. THAM SỐ TRONG SMPP 4. Giá trị của các mã lệnh ID generic_nack bind_receiver bind_receiver_resp bind_transmitter bind_transmitter_resp query_sm query_sm_resp submit_sm submit_sm_resp deliver_sm deliver_sm_resp unbind unbind_resp replace_sm replace_sm_resp cancel_sm cancel_sm_resp bind_transceiver bind_transceiver_resp Không dùng outbind Không dùng enquire_link enquire_link_resp Không dùng submit_multi submit_multi_resp Không dùng Không dùng Giá trị 0x80000000 0x00000001 0x80000001 0x00000002 0x80000002 0x00000003 0x80000003 0x00000004 0x80000004 0x00000005 0x80000005 0x00000006 0x80000006 0x00000007 0x80000007 0x00000008 0x80000008 0x00000009 0x80000009 0x0000000A 0x8000000A 0x0000000B 0x0000000C . ví dụ: submit_sm. Bộ lệnh của SMPP Bảng 4-1. 4.0x800000FF 0x00000100 51 . xem giá trị có thể trong bảng 4-1.1. chỉ khác là bit 31 được thiết lập.1.1. query_sm.0x80000020 0x00000021 0x80000021 0x00000022 .0x000000FF 0x80000022 . Phần header của tin (chứa cả trường command_length) gồm có các tham số bắt buộc và tùy chọn.2. 4.2.1.0x80000014 0x00000015 0x80000015 0x00000016 . command_id Trường command_id xác định kiểu PDU của tin.0x00000014 0x8000000B .

Mã lỗi được trả lại trong trường command_status và trường error_status_code trong submit_multi_resp.Không dùng Không dùng alert_notification Không dùng data_sm data_sm_resp Dùng cho phần mở rộng Không dùng Dùng cho các nhà cung cấp SMSC Không dùng 0x80000100 0x00000101 0x80000101 0x00000102 0x80000102 0x00000103 0x80000103 0x00000104 . command_status Trường command_status trong phản hồi cho biết trạng thái của yêu cầu. ESME đã được bind Cờ ưu tiên không hợp lệ Cờ đăng ký gửi không hợp lệ Lỗi hệ thống Địa chỉ nguồn không hợp lệ Địa chỉ đích không hợp lệ ID của tin không hợp lệ Bind không thành công Sai mật khẩu Lỗi ID của hệ thống Bỏ qua tin ngắn không thành công Thay thế tin ngắn không thành công Hàng đợi đầy Kiểu dịch vụ không hợp lệ Số địa chỉ đích không hợp lệ Tên danh sách gửi tin không hợp lệ Cờ đích không hợp lệ (submit_multi) 52 . Bảng 4-2.0x0000FFFF 0x80000104 . trong yêu cầu sẽ có giá trị NULL.3. Mã lỗi Mã lỗi Giá trị ESME_ROK ESME_RINVMSGLEN ESME_RINVCMDLEN ESME_RINVCMDID ESME_RINVBNDSTS 0x00000000 0x00000001 0x00000002 0x00000003 0x00000004 ESME_RALYBND ESME_RINVPRTFLG ESME_RINVREGDLVFLG ESME_RSYSERR Không dùng ESME_RINVSRCADR ESME_RINVDSTADR ESME_RINVMSGID ESME_RBINDFAIL ESME_RINVPASWD ESME_RINVSYSID Không dùng ESME_RCANCELFAIL Không dùng ESME_RREPLACEFAIL ESME_RMSGQFUL ESME_RINVSERTYP Không dùng 0x00000005 0x00000006 0x00000007 0x00000008 0x00000009 0x0000000A 0x0000000B 0x0000000C 0x0000000D 0x0000000E 0x0000000F 0x00000010 0x00000011 0x00000012 0x00000013 0x00000014 0x00000015 0x000000160x00000032 0x00000033 0x00000034 0x000000350x0000003F 0x00000040 ESME_RINVNUMDESTS ESME_RINVDLNAME Không dùng ESME_RINVDESTFLAG Mô tả Không có lỗi Chiều dài tin không hợp lệ Chiều dài lệnh không hợp lệ Sai ID lệnh Trạng thái Bind của một lệnh cho trước không đúng.0x000102FF 0x80010200 . Nó chỉ có trong phản hồi.1.0xFFFFFFFF 4.0x000101FF 0x80010000 .0x8000FFFF 0x00010000 .0x800102FF 0x00010300 .0x800101FF 0x00010200 .

Giá trị cho phép trong khoảng 0x00000001 to 0x7FFFFFFF.4. 53 .1. sequence_number Dùng cho quá trình ánh xạ các phản hồi tương ứng với các yêu cầu.Không dùng ESME_RINVSUBREP ESME_RINVESMCLASS ESME_RCNTSUBDL ESME_RSUBMITFAIL 0x00000041 0x00000042 0x00000043 0x00000044 0x00000045 Không dùng 0x000000460x00000047 0x00000048 0x00000049 0x00000050 0x00000051 0x00000052 0x00000053 0x00000054 0x00000055 0x000000560x00000057 0x00000058 0x000000590x00000060 0x00000061 0x00000062 0x00000063 0x00000064 0x00000065 0x00000066 0x00000067 0x000000680x000000BF 0x000000C0 0x000000C1 0x000000C2 0x000000C3 0x000000C4 0x000000C50x000000FD 0x000000FE ESME_RINVSRCTON ESME_RINVSRCNPI ESME_RINVDSTTON ESME_RINVDSTNPI Không dùng ESME_RINVSYSTYP ESME_RINVREPFLAG ESME_RINVNUMMSGS Không dùng ESME_RTHROTTLED Không dùng ESME_RINVSCHED ESME_RINVEXPIRY ESME_RINVDFTMSGID ESME_RX_T_APPN ESME_RX_P_APPN ESME_RX_R_APPN ESME_RQUERYFAIL Không dùng ESME_RINVOPTPARSTREAM ESME_ROPTPARNOTALLWD ESME_RINVPARLEN ESME_RMISSINGOPTPARAM ESME_RINVOPTPARAMVAL Không dùng ESME_RDELIVERYFAILURE ESME_RUNKNOWNERR Dùng cho phần mở rộng 0x000000FF 0x000001000x000003FF Dùng cho nhà cung cấp sản phẩm 0x00000400SMSC 0x000004FF Không dùng 0x000005000xFFFFFFFF Lỗi yêu cầu thay thế Dữ liệu của trường esm_class không hợp lệ Không thể đệ trình danh sách gửi tin submit_sm hoăc submit_multi không thành công Địa chỉ nguồn TON không hợp lệ Địa chỉ nguồn NPI không hợp lệ Địa chỉ đích TON không hợp lệ Địa chỉ đích NPI không hợp lệ Trường system_type không hợp lệ Cờ replace_if_present không hợp lệ Số lượng tin không hợp lệ Vượt quá giới hạn tin cho phép Lỗi thời gian nhật ký gửi Lỗi khoảng thời gian hợp lệ Không tìm thấy tin Lỗi Temporary App của ESME Receiver Lỗi Permanent App của ESME Receiver Tin không được ESME Receiver chấp nhận Yêu cầu query_sm không thành công Lỗi phần tùy chọn trong Body của PDU Tham số tùy chọn không được phép Chiều dài tham số không hợp lệ Thiếu tham số tùy chọn được mong đợi Giá trị tham số tùy chọn không hợp lệ Gửi tin không thành công (sử dụng cho data_sm_resp) Lỗi không xác định 4.

1. dest_addr_npi.5.3 trở xuống: 0x00-0x33 Chỉ hỗ trợ phiên bản 3. esme_addr_ton Các trường định nghĩa kiểu số (TON) được sử dụng trong tham số địa chỉ của SME. interface_version Tham số interface_version được sử dụng để chỉ ra phiên bản SMPP đang được sử dụng. 4. Bảng 4-4. Các giá trị NPI NPI Unknown ISDN (E163/E164) Data (X. Các tham số bắt buộc của SMPP 4.2. source_addr_ton. esme_addr_npi Các trường định nghĩa Numeric Plan Indicator (NPI) được sử dụng trong tham số địa chỉ của SME. 4. system_id Tham số system_id được sử dụng để nhận dạng một ESME hoặc một SMSC trong thời gian bind.2.4: 0x34 4.2. Tham số này là tùy chọn. system_type Tham số system_type được sử dụng để phân loại ESME bind tới SMSC. addr_npi.4. addr_ton. password Tham số password dc SMSC sử dụng để xác thực ESME trong quá trình bind.2. Ví dụ: Nếu muốn hỗ trợ phiên bản từ 3. Tham số password cũng được ESME sử dụng để xác thực SMSC phát lệnh outbind.69) Land Mobile (E. Bảng 4-3.212) National Giá trị 00000000 00000001 00000011 00000100 00000110 00001000 54 .2. Các nhà cung cấp dịch vụ có thể yêu cầu các ESME cung cấp password.2. dest_addr_ton.2.121) Telex (F. Các giá trị TON TON Unknown International National Network Specific Subscriber Number Alphanumeric Abbreviated Các giá trị khác chưa dùng Giá trị 00000000 00000001 00000010 00000011 00000100 00000101 00000110 4. một số SMSC không yêu cầu ESME cung cấp.4.2.6.3. source_addr_npi. 4.

không được phép dùng một dãy các IP. Cú pháp UNIX Regular được sử dụng để chỉ ra một khoảng địa chỉ (phụ lục A).Private ERMES Internet (IP) WAP Client Id (được định nghĩa bởi WAP Forum) 00001001 00001010 00001110 00010010 4. service_type Tham số service_type được sử dụng để biểu thị cho một dịch vụ ứng dụng của SMS. 4. source_addr Chỉ ra địa chỉ của SME nguồn mà đã phát tin đi.12. Có các loại sau: NULL CMT CPT VMN VMA WAP USSD Mặc định Cellular Messaging Cellular Paging Voice Mail Notification Voice Mail Alerting Wireless Application Protocol Unstructured Supplementary Services Data 4. được dùng trong alert_notification. 4. 4.2. Địa chỉ IP phải theo dạng “aaa.ddd”. 4. Địa chỉ IP phải theo dạng “aaa. address_range Tham số address_range được sử dụng trong lệnh bind_receiver và bind_transceiver để chỉ ra một bộ các địa chỉ được cung cấp bởi ESME client.ccc.ccc.2.bbb. esme_addr Chỉ ra địa chỉ của một ESME. Địa chỉ IP phải theo dạng “aaa.10.11. Ví dụ số điện thoại đi động của người nhận.bbb.ddd”. esm_class Tham số này được sử dụng để chỉ ra các thuộc tính đặc biệt liên quan đến tin ngắn.2.2. Ví dụ số điện thoại di động của người gửi. Tham số esm_class được định dạng như sau trong các PDU submit_sm. submit_multi và data_sm (truyền từ ESME đến SMSC): Bits 76543210 xxxxxx00 xxxxxx01 xxxxxx10 xxxxxx11 Ý nghĩa Chế độ của tin (bits 1-0) Chế độ mặc định của SMSC (ví dụ: Store and Forward) Chế độ Datagram Chê độ Forward Chế độ Store and Forward 55 .9.2.2. Đối với trường hợp địa chỉ IP thì chỉ cho phép giá trị đơn.ddd”. destination_addr Chỉ ra địa chỉ của SME đích mà sẽ nhận tin.7.8.ccc.bbb.

Đối với các thiết bị đầu cuối theo IS-95 SMSC thiết lập giá trị NULL cho trường này. SMSC thiết lập giá trị NULL cho trường này. protocol_id Có các loại sau: GSM Thiết lập theo đặc tả của GSM 03.2.2.14.xx0000xx xx0010xx xx0100xx Message Type (bits 5-2) Default message Type (i.13. priority_flag Tham số này cho phép các SME phát tin có thể gán mức ưu tiên cho tin ngắn. Hiện tại có 4 mức ưu tiên được hỗ trợ: 0 = Level 0 (lowest) priority 56 . Trường này không được SMSC sử dụng và bị bỏ qua. Trường này không được SMSC sử dụng và bị bỏ qua. normal message) Short Message contains ESME Delivery Acknowledgement Short Message contains ESME Manual/User Acknowledgement 00xxxxxx 01xxxxxx 10xxxxxx 11xxxxxx Đặc tính của mạng GSM (bits 7-6) Không có đặc tính nào được chọn UDHI Indicator (chỉ liên quan đến các tin ngắn của MT) Thiét lập Reply Path (only relevant for GSM network) Thiết lập UDHI và Reply Path (chỉ sử dụng cho mạng GSM) Tham số esm_class được định dạng như sau trong các PDU deliver_sm và data_sm (truyền từ SMSC đến ESME): Bits 76543210 xxxxxxxx Ý nghĩa Chế độ của tin (bits 1-0) Không dùng xx0000xx xx0001xx xx0010xx xx0011xx xx0100xx xx0101xx xx0110xx xx0111xx xx1000xx Kiểu tin (bits 5-2) Mặc định Tin ngắn chứa SMSC Delivery Receipt Tin ngắn chứa SME Delivery Acknowledgement Không dùng Tin ngắn chứa SME Manual/User Acknowledgment Không dùng Tin ngắn chứa Conversation Abort (Korean CDMA) Không dùng Tin ngắn chứa Intermediate Delivery Notification 00xxxxxx 01xxxxxx 10xxxxxx 11xxxxxx Các đặc tính của mạng GSM (bits 7-6) Không có đặc tính nào được chọn UDHI Indicator set Reply Path UDHI and Reply Path 4.40 ANSI-136 (TDMA) Dùng cho các thiết bị nhắn tin đầu cuối. 4.e. Đối với các thiết bị đầu cuối theo ANSI-136. IS-95 (CDMA) Dùng cho các thiết bị nhắn tin đầu cuối.

0: Không thay đổi 1: Thay đổi 2-255: Không dùng 57 . Nó có thể được định theo thời gian tuyệt đối hoặc tương đối so với thời gian của SMSC.2. replace_if_present_flag Tham số này được sử dụng để yêu cầu SMSC thay đổi một tin được đệ trình từ trước mà vẫn chưa gửi đi. Mức ưu tiên được ứng dụng cho các mạng khác nhau Mức ưu tiên 0 1 2 3 GSM không ưu tiên ưu tiên ưu tiên ưu tiên ANSI-136 Bulk Bình thường Khẩn cấp Cực kỳ khẩn cấp IS-95 Bình thường Interactive Khẩn Cực kỳ khẩn 4. 4. Nếu vượt qua khoảng thời gian đó. 4. xem phần 6. service_type. 4.1 = Level 1 priority 2 = Level 2 priority 3 = Level 3 (highest) priority >3=Chưa dùng Bảng 4-5.1. SMSC sẽ thay đổi một tin ngắn đã có dựa trên các tham số được cung cấp là địa chỉ nguồn.2. địa chỉ đích. registered_delivery Tham số registered_delivery được sử dụng để yêu cầu một SMSC delivery receipt và/hoặc SME originated acknowledgements. xem phần 6.1. validity_period Chỉ ra khoảng thời gian hợp lệ để gửi tin.2.17.18. tin ngắn sẽ bị bỏ qua. schedule_delivery_time Tham số nay chỉ ra thời gian cố gắng gửi tin lần thứ hất. Nó có thể được định theo thời gian tuyệt đối hoặc tương đối so với thời gian của SMSC.16.1. Các giá trị được định nghĩa như sau: Bits 76543210 xxxxxx00 xxxxxx01 xxxxxx10 xxxxxx11 Ý nghĩa SMSC Delivery Receipt (bits 1 và 0) Không yêu cầu SMSC Delivery Receipt (mặc định) SMSC Delivery Receipt được yều cầu SMSC Delivery Receipt được yều cầu Không dùng xxxx00xx xxxx01xx xxxx10xx xxxx11xx SME originated Acknowledgement (bits 3 và 2) Không yêu cầu (mặc định) SME Delivery Acknowledgement được yêu cầu SME Manual/User Acknowledgment được yêu cầu Cả hai được yêu cầu xxx0xxxx xxx1xxxx Intermediate Notification (bit 5) Không được yêu cầu (mặc định) Intermediate notification được yêu cầu Giá trị mặc định của tham số này là 0x00.2.15.1.

data_coding Bits 76543210 Ý nghĩa 00000000 00000001 00000010 00000011 00000100 00000101 00000110 00000111 00001000 00001001 00001010 00001011 00001100 00001101 00001110 00001111 : 10111111 1100xxxx 1101xxxx 1110xxxx 1111xxxx SMSC Default Alphabet IA5 (CCITT T.4. tính bằng octet.4) Octet unspecified (8-bit binary) Latin 1 (ISO-8859-1) Octet unspecified (8-bit binary) JIS (X 0208-1990) Cyrllic (ISO-8859-5) Latin/Hebrew (ISO-8859-8) UCS2 (ISO/IEC-10646) Pictogram Encoding ISO-2022-JP (Music Codes) Không dùng Không dùng Extended Kanji JIS(X 0212-1990) KS C 5601 Không dùng Chú ý b b b a b b b a b b b b Không dùng GSM MWI control .38] d Không dùng GSM message class control .2.38] e a. Định nghĩa cho TDMA và/hoặc CDMA.2.2.80 c. 4. nên chỉ ra GSM message class control trong tham số tùy chọn dest_addr_subunit.xem [GSM 03. CDMA.50)/ASCII (ANSI X3. b.19.xem [GSM 03. 4. d. TDMA. Chiều dài tối đa có thể gửi được là 254. Giao thức SMPP cho phép các ứng dụng ESME sử dụng cùng các giá trị DCS cho tất cả 3 công nghệ. Giá trị cho phép từ 1 đến 254.21.38] d GSM MWI control . 4. sm_length Chỉ ra chiều dài của tham số short_message.22. sm_default_msg_id Tham số này chỉ ra thứ tự của các tin đã được định nghĩa sẵn trong kho của SMSC. Định dạng đữ liệu chung cho GSM. Không có thiết lập mặc định cho tham số data_coding. 58 .20. Chỉ để phát triển bộ mã ký tự.xem [GSM 03. ESME sử dụng tham số tùy chọn message_payload để gửi dữ liệu lớn hơn 254 octet. và deliver_sm. Khoảng giá trị cho phép là 0 đến 254. Tham số message_payload được sử dụng để gửi tin lớn hơn 254 octet. Tham số sm_length có thể có giá trị 0 trong các PDU submit_sm. e.2. nên chỉ ra GSM MWI control trong các tham số tùy chọn _ms_msg_wait_facilities và ms_validity. short_message Tham số này chứa dữ liệu thực sự của tin ngắn. SMPP sử dụng các giá trị có trong GSM 03. Chỉ để phát triển bộ mã ký tự. submit_multi. không dùng cho GSM.

3.24. message_state Tham số message_state chỉ ra trạng thái của một tin ngắn.2.25. 4.2. tối đa chỉ có 254. Bảng giá trị trạng thái của tin Tên ENROUTE DELIVERED EXPIRED DELETED UNDELIVERABLE ACCEPTED UNKNOWN REJECTED Giá trị 1 2 3 4 5 6 7 8 Mô tả The message is in enroute state. message_id Tham số này được dùng để nhận dạng tin. number_of_dests Tham số này chỉ ra số lượng địa dest_address có trong lệnh submit_multi.3. Nó dược sử dụng trong các lệnh truy vấn.2. Giao thức SMPP định nghĩa các khối Tag của tham số như sau: 0x0000 0x0001 . Tin đã được gửi đến đích Tin đã quá hạn Tin đã bị xóa Không thể truyền tin Tin đã được chấp nhận Không rõ trạng thái Tin bị từ chối 4. no_unsuccess Chỉ ra số lượng các địa chỉ của SME không thể gửi được tin cho lệnh submit_multi.2. Giá trị của tham số này được trả lại bởi SMSC cho ESME như một phần của PDU query_sm_resp. Tất cả các tham số tùy chọn đều có Tag nhận dạng 16-bit.0x01FF Không dùng Dùng cho các tham số tùy chọn Không dùng 59 .27. dest_flag Tham số này được sử dụng để xác định địa chỉ đích là địa chỉ của SME hay tên danh sách gửi tin. dl_name Tham chiếu đến tên của danh sách gửi tin được lưu trong SMSC.2.SME Address 2 . được SMSC gán cho mỗi tin.2. ESME hoặc SMSCcó thể đưa thêm một vài.1. 4. Mô tả tham số tùy chọn của SMPP 4.28.23.4.Distribution List Name 4. Nhận dạng các Tag của tham số tùy chọn Các tham số tùy chọn luôn luôn xuất hiện tại cuối của một tin.26. tùy thuộc vào ngữ cảnh ứng dụng. Cho mỗi PDU riêng. bỏ qua hoặc thay thế tin.0x00FF 0x0100 . 4. hoặc tất cả hoặc không có trường mở rộng nào. 4. Bảng 4-6. 1 .

GSM. TDMA CDMA.2. TDMA Generic Generic Generic CDMA. Giá trị các Tag của tham số tùy chọn Tag dest_addr_subunit dest_network_type dest_bearer_type dest_telematics_id source_addr_subunit source_network_type source_bearer_type source_telematics_id qos_time_to_live payload_type additional_status_info_text receipted_message_id ms_msg_wait_facilities privacy_indicator source_subaddress source_subaddress dest_subaddress user_message_reference user_response_code source_port destination_port sar_msg_ref_num language_indicator sar_total_segments sar_segment_seqnum SC_interface_version callback_num_pres_ind callback_num_atag number_of_messages callback_num dpf_result set_dpf ms_availability_status network_error_code message_payload delivery_failure_reason more_messages_to_send message_state ussd_service_op display_time sms_signal Giá trị 0x0005 0x0006 0x0007 0x0008 0x000D 0x000E 0x000F 0x0010 0x0017 0x0019 0x001D 0x001E 0x0030 0x0201 0x0202 0x0202 0x0203 0x0204 0x0205 0x020A 0x020B 0x020C 0x020D 0x020E 0x020F 0x0210 0x0302 0x0303 0x0304 0x0381 0x0420 0x0421 0x0422 0x0423 0x0424 0x0425 0x0426 0x0427 0x0501 0x1201 0x1203 Công nghệ mạng GSM Generic Generic GSM GSM Generic Generic GSM Generic Generic Generic Generic GSM CDMA. TDMA.0x05FF Dùng cho các tham số tùy chọn 0x0600 . TDMA Generic CDMA. TDMA CDMA.0x0200 .3. Định nghĩa các Tag của tham số tùy chọn Bảng 4-7. TDMA TDMA 60 .0x10FF Dành riêng cho các phần mở rộng của giao thức 0x1100 .0x11FF Không dùng 0x1200 . iDEN Generic Generic Generic Generic Generic Generic GSM Generic GSM (USSD) CDMA.0x3FFF Dành riêng cho các nhà phân phối sản phẩm SMSC 0x4000 .0x13FF Dùng cho các tham số tùy chọn 0x1400 .0xFFFF Không dùng 4. TDMA Generic Generic Generic TDMA TDMA CDMA CDMA. TDMA CDMA.

3. TDMA CDMA CDMA CDMA 4. source_addr_subunit Tham số source_addr_subunit chỉ ra địa chỉ nguồn phát tin. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả dest_addr_subunit Chiều dài của Value tính bằng octet 0x00 = Unknown (mặc định) 0x01 = MS Display 0x02 = Mobile Equipment 0x03 = Smart Card 1 (thường là thẻ SIM) 0x04 = External Unit 1 5 .3. ví dụ. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả dest_network_type Chiều dài của Value tính bằng octet 0x00 = Unknown 0x01 = GSM 0x02 = ANSI-136/TDMA 0x03 = IS-95/CDMA 0x04 = PDC 0x05 = PHS 0x06 = iDEN 0x07 = AMPS 0x08 = Paging Network 9 to 255 = Không dùng 4.3.3.1 4.4.2. dest_network_type Tham số dest_network_type được sử dụng để chỉ ra kiểu mạng liên quan đến địa chỉ nguồn của một tin.255 = Không dùng 4. ví dụ một thể thông minh trong MS hoặc một thiết bị ngoại vi kết nối vào MS.2.1. Trong trường hợp này.3.2. một thẻ thông minh trong MS hoặc một thiết bị bên ngoài kết nối vào MS. dest_addr_subunit Tham số này được sử dụng để định tuyến các tin khi một MS đã nhận được tin đó.2.3. 61 .2.ms_validity alert_on_message_delivery its_reply_type its_session_info 0x1204 0x130C 0x1380 0x1383 CDMA.2. hệ thống nhận tin (ví dụ SMSC) mà không hỗ trợ kiểu mạng đó. nó sẽ trả lại một PDU báo cáo lỗi. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả source_addr_subunit Chiều dài của Value tính bằng octet xem mục 4. source_network_type Tham số source_network_type được sử dụng để chỉ ra kiểu mạng liên quan đến nguồn phát tin.

dest_bearer_type Tham số dest_bearer_type được sử dụng để yêu cầu bearer cho việc gửi tin đến địa chỉ đích.2.2.2.2. source_bearer_type Tham số source_bearer_type chỉ ra bearer mà qua đó tin được phát đi. cá hệ thống nhận tin (ví dụ SMSC) mà không hỗ trợ kiểu bearer sẽ trả lại một PDU phản hồi báo cáo lỗi.2.2.7.3.3.7 62 .5.3. các hệ thống nhận tin (ví dụ SMSC) không hỗ trợ telematic interworking có thể trả lại một PDU phản hồi báo cáo lỗi.3. dest_telematics_id Tham số này định nghĩa telematic interworking được sử dụng cho các hệ thống gửi tin cho địa chỉ nguồn. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả dest_bearer_type Chiều dài của Value tính bằng octet 0x00 = Unknown 0x01 = SMS 0x02 = Circuit Switched Data (CSD) 0x03 = Packet Data 0x04 = USSD 0x05 = CDPD 0x06 = DataTAC 0x07 = FLEX/ReFLEX 0x08 = Cell Broadcast (cellcast) 9 to 255 = reserved 4. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả source_bearer_type Chiều dài của Value tính bằng octet xem mục 4.6.8. source_telematics_id Tham số source_telematics_id chỉ ra kiểu giao tiếp của telematic mà qua đó tin được phát. Nóđược dùng cùng với tham số dest_bearer_type.Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả source_network_type Chiều dài của Value tính bằng octet xem mục 4. Trong trường hợpnaày. Trong trường hợp này.3.5 4.2.3 4.3.3. Trường Tag Length Value Kích thước 2 2 2 Kiểu Integer Integer Integer Mô tả dest_telematics_id Chiều dài của Value tính bằng octet được định nghĩa 4. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả source_telematics_id Chiều dài của Value tính bằng octet 4.

...2. Trường Tag Length Value Kích thước 2 2 1-256 Kiểu Integer Integer C Ocet String Mô tả additional_status_info_text Chiều dài của Value tính bằng octet Thông tin dưới dạng text. payload_type Tham số payload_type chỉ ra kiểu PDU tầng cao hơn chứa trong message payload.2.3.3.0 I00000TT 63 .. 4.11.. Trường Tag Length Value Kích thước 2 2 4 Kiểu Integer Integer Integer Mô tả qos_time_to_live Chiều dài của Value tính bằng octet Số giây 4. Trong trường hợp của một ứng dụng WAP... Tham số này cũng chỉ ra kiểu của tin.12.. receipted_message_id Tham số receipted_message_id chỉ ra ID của tin trong một SMSC Delivery Receipt.4. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Bit Mask Mô tả ms_msg_wait_facilities Chiều dài của Value tính bằng octet Bits 7. Dữ liệu được định dạng theo Wireless Control Message Protocol 2 – 255 Không dùng 4.. SMSC sẽ nhập giá trị mặc định.13. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả payload_type Chiều dài của Value tính bằng octet 0 Mặc định. Nếu tham số này không được chỉ ra.2. qos_time_to_live Tham số này chỉ ra số giây mà đối tượng gửi yêu cầu SMSC lữu giữ nếu chưa được gửi. Trường Tag Length Value Kích thước 2 2 1-65 Kiểu Integer Integer C Ocet String Mô tả receipted_message_id Chiều dài của Value tính bằng octet SMSC nẵm giữ tin đã được gửi 4.10. 1 WCMP message.3.. nó là một WDP message.2.. ms_msg_wait_facilities Tham số ms_msg_wait_facilities parameter cung cấp một dấu hiện cho MS biết có các tin đang trờ trên hệ thống.2.3.9. tạo điều kiện phân tích lỗi một cách dễ dàng. additional_status_info_text Tham số additional_status_info_text dùng để mô tả thông tin trạng thái dưới dạng văn bản theo ASCII.3.

3.3. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả privacy_indicator Chiều dài của Value tính bằng octet 0 = Privacy Level 0 (không bí mật) 1 = Privacy Level 1 (có hạn chế) 2 = Privacy Level 2 (bí mật) 3 = Privacy Level 3 (tuyệt đối bí mật) 4 .15 64 .Dấu hiệu được kích hoạt hay không là ở bit số 7: 0 = Dấu hiệu không được kích hoạt 1 = Dấu hiệu được kích hoạt Kiểu của tin nằm tại bit 0 và 1: 00 = Voicemail Message Waiting 01 = Fax Message Waiting 10 = Electronic Mail Message Waiting 11 = Loại khác 4. Trường Tag Length Value Kích thước 2 2 Thay đổi 2 – 23 Kiểu Integer Integer Octet String Mô tả source_subaddress Chiều dài của Value tính bằng octet Ocet đầu tiên của trường dữ liệu là một kiểu của Tag Subaddress và chỉ ra kiểu của thông tin subaddressing.15.213] 10100000 – Cho người sử dụng Các octet còn lại chứa subaddress. 4. source_subaddress Tham số source_subaddress chỉ ra địa chỉ phụ của đối tượng phát tin.16.Tham số này không được hỗ trợ trong PDU submit_multi. privacy_indicator Tham số privacy_indicator chỉ ra mức riêng tư của tin.3.14.NSAP (Odd) [ITUT X.255 không dùng 4.213] 10001000 . Các giá trị Tag hợp lệ: 00000001 – Không dùng 00000010 – Không dùng 10000000 .NSAP (Even) [ITUT X. dest_subaddress Tham số dest_subaddress chỉ ra một subaddress liên quan đến nguồn của tin. Trường Tag Length Value Kích thước 2 2 Thay đổi 2 – 23 Kiểu Integer Integer Octet String Mô tả dest_subaddress Chiều dài của Value tính bằng octet Xem 4.2.2.2.3.2.

Trường Tag Length Value Kích thước 2 2 2 Kiểu Integer Integer Integer Mô tả source_port Chiều dài của Value tính bằng octet Tất cả các giá trị đều được chấp nhận 4.2.3.21. Trường Tag Length Value Kích thước 2 2 2 Kiểu Integer Integer Integer Mô tả destination_port Chiều dài của Value tính bằng octet Tất cả các giá trị đều được chấp nhận 65 .15 (CMT-136 TDMA) 4.3. destination_port Tham số destination_port được sử dụng để chỉ ra số cổng liên kết với địa chỉ đích của tin.3.255 (IS-95 CDMA) 0 . user_message_reference Một tham chiếu được nhập bởi SME phát tin.20.18. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả user_response_code Chiều dài của Value tính bằng octet 0 .3.19. Các mã lỗi là tùy thuộc các đặc tả của các ứng dụng. source_port Tham số source_port được sử dụng để chỉ ra số cổng liên kết với địa chỉ nguồn của tin.2.2. language_indicator Tham số language_indicator được sử dụng để chỉ ra ngôn ngữ của tin ngắn.2. Trường Tag Length Value Kích thước 2 2 2 Kiểu Integer Integer Integer Mô tả user_message_reference Chiều dài của Value tính bằng octet Tất cả các giá trị đều được chấp nhận 4. Trường Tag Length Value Kích thước 2 2 1 Kiểu Integer Integer Integer Mô tả language_indicator Chiều dài của Value tính bằng octet 0 = không chỉ rõ (mặc định) 1 = english 2 = french 3 = spanish 4 = german 5 = Portuguese tham khảo [CMT-136] để xem các giá trị khác 4.4.2. user_response_code Một mã của phản hồi được người sử dụng thiết lập trong tin User Acknowledgement/Reply.17.3.

Khi tham số này được thiết lập PDU cũng phải thiết lập cho các tham số sar_msg_ref_num và sar_segment_seqnum.2. PDU cũng phải thiết lập các tham số sar_total_segments và sar_segment_seqnum. Khi tham số này được thiết lập PDU cũng phải thiết lập cho các tham số sar_msg_ref_num và sar_segment_seqnum.3. Tag Length Value 2 2 1 Integer Integer Integer display_time Chiều dài của Value tính bằng octet 0 = Temporary 1 = Default (mặc định) 2 = Invoke 3 .3. sar_msg_ref_num Tham số sar_msg_ref_num được sử dụng để chỉ ra số tham chiếu cho mỗi phần riêng của một tin cần được nối lại. Tag Length Value 2 2 1 Integer Integer Integer sar_segment_seqnum Chiều dài của Value tính bằng octet Giá trị cho phép từ 1 đến 255. được sử dụng để chỉ ra số lượng tổng cộng của các đoạn tin Integer Integer Integer sar_total_segments Chiều dài của Value tính bằng octet Giá trị cho phép từ 1 đến 255. sar_total_segments Tham số sar_total_segments ngắn. Tag Length Value 2 2 1 Integer Integer Integer sc_interface_version Chiều dài của Value tính bằng octet Ví dụ: 3. Trường Tag Length Value Kích thước 2 2 2 4. 4.23. Khi thiết lập tham số này.22. sc_interface_version Tham số sc_interface_version được sử dụng để chỉ ra phiên bản của giao thức SMPP được hỗ trợ bởi SMSC. display_time Tham số display_time được sử dụng để chỉ ra một display time của tin ngắn.2.24.3.255 Không dùng 66 .3.2.26.4 4. Nó được trả lại trong các PDU phản hồi của lệnh bind.25. sar_segment_seqnum Tham số sar_segment_seqnum được sử dụng để chỉ ra số tuần tự cho mỗi tin riêng biệt trong tin cần được kết nối lại. 4. Tag 2 Length 2 Value 1 Kiểu Integer Integer Integer Mô tả sar_msg_ref_num Chiều dài của Value tính bằng octet Chứa một số tham chiếu cho một đoạn tin.4.3.2.2.

255 không dùng 4.255 không dùng 67 . ms_availability_status Tham số ms_availability_status được sử dụng trong lệnh alert_notification để chỉ ra trạng thái sẵn sàng của MS với ESME.29. Tag Length Value 2 2 1 Integer Integer Integer set_dpf Chiều dài của Value tính bằng octet 0 = Không thiết lập cờ DPF 1 = Thiết lập cờ DPF (mặc định) 2 . SMSC sẽ phản hồi lại yêu cầu đó với một PDU alert_notification khi nó phát hiện ra MS đã sẵn sàng.2.30. không tương thích. nếu cờ delivery pending flag (DPF) được thiết lập. Tag Length Value 2 2 1 Integer Integer Integer dpf_result Chiều dài của Value tính bằng octet 0 = DPF không được thiết lập 1 = DPF được thiết lập 2 . thì ESME phải đảm bảo rằng DPF không được thiết lập.3.255 không dùng 4. thì ESME phải được đảm bảo rằng MS là đang sẵn sàng. ms_validity Tham số ms_validity được sử dụng để cung cấp thông tin về thời gian hợp lệ của tin ngắn.3. set_dpf Một ESME có thể sử dụng tham số set_dpf để yêu cầu thiết lập cờ delivery pending flag (DPF) cho việc truyền tin không thành công. Tag Length Value 2 2 1 Integer Integer Integer ms_validity Chiều dài của Value tính bằng octet 0 = Store Indefinitely (mặc định) 1 = Power Down 2 = SID based registration area 3 = Display Only 4 .2. Nếu SMSC không đưa tham số này vào trong lệnh alert_notification.27.3. như MS chưa sẵn sàng gửi tin. Hiện tại tham số này chỉ ứng dụng cho chế độ Transaction của tin. Nếu tham số dpf_result không có trong PDU data_sm_resp.2.3. dpf_result Tham số dpf_result được sử dụng trong PDU data_sm_resp để chỉ ra việc gửi tin không thành công.28. Tag Length Value 2 2 1 Integer Integer Integer set_dpf Chiều dài của Value tính bằng octet 0 = Available (mặc định) 1 = Denied (ví dụ: tạm cheo. …) 2 = Unavailable 3.2.255 không dùng 4.4.

255 không dùng 4. không tương thích. 4.33.2.3.3. Tag Length Value 2 2 3 Integer Integer Octet String network_error_code Chiều dài của Value tính bằng octet Trường con Kich thước Kiểu Kiểu mạng 1 Integer Mã lỗi 2 Integer octet đầu tiên chỉ ra kiểu mạng. ESME có thể kiểm tra tham số network_error_code để biết được lỗi thực sự.2.2.4.34. delivery_failure_reason Tham số delivery_failure_reason được sử dụng trong lệnh data_sm_resp để chỉ kết quả của việc cố gắng gửi tin (chỉ có thể áp dụng cho chế độ Transaction của tin). Giá trị tiếp thoe được định nghĩa như sau: 1 = ANSI-136 2 = IS-95 3 = GSM 4 = Reserved Tất cả các giá trị khác không được sử dụng. network_error_code Tham số network_error_code được sử dụng để chỉ ra các mã lỗi thực sự của mạng cho việc gửi không thành công.3. Nếu việc giử không thành công do lỗi mạng.3. Tham số delivery_failure_reason không được đưa vào nếu gửi thành công.31. Tag Length Value 2 2 1 Integer Integer Integer delivery_failure_reason Chiều dài của Value tính bằng octet 0 = Đích chưa săn sàng 1 = Lỗi địa chỉ đích (Tạm cheo. Hai octet còn lại là mã lỗi thực sự của mạng. SMSC có thể sử dụng tham số này để tối ưu hóa tài nguyên mạng. more_messages_to_send Tham số more_messages_to_send được ESME sử dụng trong các lệnh submit_sm và data_sm để chỉ ra rằng SMSC đó còn có các tin cần gửi cho cùng một địa chỉ đích SME đó. message_payload Tham số message_payload chưa dữ liệu người sử dụng.255 không dùng 68 .2. hạn cho theo giá trị được mỗi mạng thiết lập. Tag Length Value 2 2 Thay đổi Integer Integer Octet String message_payload Chiều dài của Value tính bằng octet Dữ liệu của người sử dụng. …) 2 = Lỗi Permanent network 3 = Lỗi Temporary network 4 .32. 4. Tag Length Value 2 2 1 Integer Integer Integer more_messages_to_send Chiều dài của Value tính bằng octet 0 = Không cònNo more messages to follow 1 = Còn (mặc định) 2 . Các mã này phụ thuộc vào từng công nghệ mạng.

.28 4...0 0000ppss Tham số này điều khiển presentation indication and screening của số callback...36.3. Trong các mạng TDMA.2. not screened 01 = User provided..2..2. Các octet cuối cùng chứa các số callback. nó có thể gửi và nhận nhiều số callback tới/từ các MS của TDMA.3... xem mục 4.. Presentation Indicator (bit 2 và 3) 00 = Presentation Allowed 01 = Presentation Restricted 10 = Number Not Available 11 = Không dùng Screening Indicator (bit 0 và 1) 00 = User provided.4.3..5.0 0000000D (octet 1) 00000TTT (octet 2) 0000NNNN (octet 3) XXXXXXXX (octet 4) : : XXXXXXXX (octet N) Bit D chỉ ra chế độ số D=0 sử dụng định dạng DTMF Bit D=1 sử dụng các số ASCII.. callback_num_pres_ind Tag Length Value 2 2 1 Chiều dài của Value tính bằng octet Bits 7..2..35.. 4. octet thứ 2 tiếp theo chứa TON.2.6.37.. verified and passed 10 = User provided. Tag Length Value 2 2 1 Integer Integer Integer message_state Chiều dài của Value tính bằng octet Xem phần 4. message_state Tham số message_state được SMSC sử dụng trong các PDU deliver_sm và data_sm để chỉ ra trạng thái của thông điệp cuối cùng cho một SMSC Delivery Receipt.. verified and failed 11 = Network Provided. 69 . Octet thứ 3 chưa NPI..... callback_num Tham số callback_num có liên kết một số callback với tin.. xem mục 4.2. Tag Length Value 2 2 Thay đổi 4-19 Integer Integer Octet String callback_num Integer Integer Bit Mask callback_num_pres_ind Chiều dài của Value tính bằng octet Bits 7...

callback_num_atag Tham số callback_num_atag liên kết một alphanumeric display với số callback.2.. Tag Length Value 2 2 1 Integer Integer Integer its_reply_type Chiều dài của Value tính bằng octet 0 = Digit 1 = Number 2 = Telephone No.19 4....3. 4.4.2. Tag Length Value 2 2 1 Integer Integer Integer number_of_messages Chiều dài của Value tính bằng octet Các giá trị được phép là từ 0 đế 99...2. 3 = Password 70 .42. Tag Length Value 2 2 1 Integer Integer Bit Mask callback_num_atag Chiều dài của Value tính bằng octet max 65 string Alphanumeric display tag for call back number Bits 7. Tag Length Value 2 2 0 Integer Integer alert_on_message_delivery Chiều dài của Value tính bằng octet = 0 Không có phần Value 4. Nó chỉ ra phương thức trả lời của MS đối với một tin nhận từ ESME.3.3.2. alert_on_message_delivery Tham số alert_on_message_delivery được dùng để chỉ đạo MS thong báo cho người sử dụng.3. sms_signal Tham số sms_signal được sử dụng để hỗ trợ một MS của mạng TDMA với thông tin báo hiệu đã nhận tin. Tag Length Value 2 2 2 Integer Integer Integer sms_signal Chiều dài của Value tính bằng octet Định dạng theo [CMT-136] 4.2.. number_of_messages Tham số number_of_messages chỉ ra số tin được lưu trữ trong mailbox.39. its_reply_type Tham số its_reply_type được sử dụng cho CDMA Interactive Teleservice.41..0 EEEEEEEE (octet 1) XXXXXXXX (octet 2) : : XXXXXXXX (octet N) Octet đầu tiên chứa Tag..40. các octet tiếp theo là chứa các dữ liệu như được mô tả trong 4. 100 đến 255 không dùng....3...2.38.

255 được sử dụng riêng cho các nhà cung cấp USSD 71 . ussd_service_op Tham số ussd_service_op dùng cho lệnh dịch vụ của USSD khi SMPP được sử dụng như một giao tiếp với một hệ thống USSD (GSM). 1 = End of Session Indicator được kích hoạt... Số thứ tự của cuộc thoại (được nhập bởi ESME) gồm các bit 7....2.31 không dùng 32 .4 = Character Line 5 = Menu 6 = Date 7 = Time 8 = Continue 9-255 không dùng 4.3.0 SSSS SSSS (octet 1) NNNN NNNE (octet 2) Octet thứ nhất chứa số thứ tự của session (0 255) ở dạng nhị phân.. Số này không thay đổi cho mỗi session.1 của octet thứ hai.15 không dùng 16 = PSSD response 17 = PSSR response 18 = USSR confirm 19 = USSN confirm 20 ... Nó chứa thông tin điều khiển cho interactive session giữa một MS và ESME.43. Tag Length Value 2 2 2 Integer Integer Octet String its_session_info Chiều dài của Value tính bằng octet Bits 7.....44. End of Session Indicator gồm các bit 0 of octet 2: 0 = End of Session Indicator không được kích hoạt. 4...3..2. its_session_info Tham số its_session_info được sử dụng cho CDMA Interactive Teleservice. Tag Length Value 2 2 1 Integer Integer Octet String ussd_service_op Chiều dài của Value tính bằng octet 0 = PSSD indication 1 = PSSR indication 2 = USSR request 3 = USSN request 4.

1. nó liên quan đến khung định dạng dữ liệu. có cả khoảng chệnh ¼ giờ và các hướng ‘+’ hoặc ‘-’. Chú ý: Các phản hồi được báo cáo bằng thời gian địa phương của SMSC. Nó có thể bị ràng buộc tùy thuộc vào mạng viễn thông.1. Định dạng thời gian Tất cả các trường có liên quan đến thời gian được định dạng là “YYMMDDhhmmsstnnp”.2. Ví dụ: ‘020610233429000R”.1. Các tham số ‘t’ và ‘nn’ bị bỏ qua và được thiết lập giá trị là ‘0’ và ‘00’. SMSC sẽ sử dụng thời gian hiện tại của nó để thiết lập các giá trị cho các tham số.2. Trong định dạng này. ‘p’ .1.1. Định dạng thời gian tương đối Thời gian tương đối được thiết lập bởi cờ ‘R’ thay cho ‘+’ hoặc ‘-’. 5. Các định về đồng hồ Các định nghĩa về đồng hồ được sử dụng cho các session của SMPP Transmitter và SMPP Receiver. Chiều dài tối đa của tin Chiều dài tối đa của tin tùy thuộc vào các công nghệ mạng. “R” Thời gian địa phương liên quan đến thời gian hiện tại của SMSC.PHẦN V.1. VẤN ĐỀ MẠNG VÀ CÁC ĐỊNH NGHĨA CHUNG 5. định dạng sẽ là “YYMMDDhhmmss”. 5.“+” Thời gian địa phương kém ¼ giờ so với UTC. Timer session_init_timer Hành động khi kết thúc Kết nối mạng bị ngắt Mô tả Đồng hồ này chỉ ra thời gian trôi qua cho phép giữa một kết nối mạng và một yêu cầu 72 .1. Định dạng thời gian tuyệt đối Đây là định dạng mặc định được sử dụng bởi SMPP. Định nghĩa về thời gian 5. Các SMSC sẽ sử dụng giá trị này để từ chối hoặc cắt các tin có chiều dài không hợp lệ. 5.2. Các thời gian đặt lịch gửi và quá hạn sẽ ở dạng UTC.1. 5. 5. “-” Thời gian địa phương hơn ¼ giờ so với UTC.1. với: ‘YY’ hai số cuối cùng của năm (00-99) ‘MM’ tháng (01-12) ‘DD’ ngay (01-31) ‘hh’ giờ (00-23) ‘mm’ phút (00-59) ‘ss’ giây (00-59) ‘t’ phần mười cỷa giây (0-9) ‘nn’ Thời gian chênh lệch trong khoảng ¼ giờ giữa thời gian địa phương và UTC (0048). Các mã lỗi của mạng PDU query_sm_resp chứa một trường error_code.

bind_transmitter hoặc
bind_receiver được gửi tới
SMSC.

Nó được kích hoạt trên
SMSC.
enquire_link_timer
inactivity_timer

response_timer

Một yêu cầu enquire_link phải
được khởi tạo.
SMPP session sẽ bị hủy

Thực thể mà phát yêu cầu có thể
thừa nhận yêu cầu mà nó giử
chưa được xử lý.

Đồng hồ này chỉ ra thời gian trôi
qua cho phép giữa các lệnh.
Thời gian trôi qua tối đa cho
phép giữa các giao dịch, khoảng
không có hoạt động gì. Đồng hô
này được kích hoạt trên các thực
thể của SMPP như SMSC hoăc
ESME.
Thời gian cho phép giữa yêu cầu
và phản hồi. Đồng hô này được
kích hoạt trên các thực thể của
SMPP như SMSC hoăc ESME.

73

PHỤ LỤC A. BIỂU THỨC QUY TẮC TRONG UNIX
Trong phần này chỉ đưa ra các ví dụ về các biểu thức quy tắc trong ngữ cảnh của SMPP,
không đi xâu vào giải thích chi tiết biểu thức quy tắc trong UNIX.
SMPP sử dụng biểu thức quy tắc trong PDU bind_receiver. ESME sử dụng nó để cung
cấp tiêu chuẩn định tuyến tới SMSC, TON, NPI và các biểu thức định tuyến (routing_expr).
Giá trị của TON và NPI là cố định khi routing_expr bảng thân nó là biểu thức quy tắc.
• ^1234. Ký tự ‘^’ được sử dụng để mô tả ngữ cảnh “bắt đầu với”. Nó cho phép
ESME xác định được bộ số dựa trên một tiền tố chung cho tất cả.
• 5678$. Ký tự ‘$’ dùng để mô tả ngữ cảnh “kết thúc với”.
• ^123456$. Ký tự ‘^’ và ‘$’ được sử dụng để mô tả ngữ cảnh “bắt đầu với và kết thúc
với”. Được sử dụng trong các địa chỉ tuyệt đối.
• [13579]$. Các ký tự trong ngoặc là một nhóm các ký từ, ngữ cảnh là “kết thúc là bất
kỳ ký tự nào trong nhóm các ký tự”. Nếu ký tự ‘^’ được đặt trong ‘[’ thì sẽ thêm
“không chứa”, ví dụ “[^12345]$”.

74

PHỤ LỤC B. ĐỊNH DẠNG TIN BÁO CÁO
SMPP cung cấp gửi các báo cáo bằng PDU deliver_sm hoặc data_sm, chỉ ra trạng thái của
việc gửi tin. Nội dung của báo cáo được chứa trong tham số short_message của lệnh
deliver_sm. Định dạng tin báo cáo tùy thuộc vào các nhà cung cấp SMSC. Mẫu chung của
báo cáo là “id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done
date:YYMMDDhhmm stat:DDDDDDD err:E Text: . . . . . . . . .”. Các trường được giải
thích trong bảng B-1.
Table B-1: Định dạng tin báo cáo
Trường

Kích thước
(octets)

Kiểu

id

10

C-Octet String
(Decimal)
C-Octet
String
(Decimal)

sub

3

dlvrd

3

C-Octet Fixed
Length String
(Decimal)

submit date

10

C-Octet Fixed
Length String

done date

10

stat

7

err

3

text

20

C-Octet Fixed
Length String
C-Octet Fixed
Length String
C-Octet Fixed
Length String
Octet String

Mô tả
ID của tin được cấp phát bởi SMSC khi đệ
trình.
Số lượng các tin được đệ trình. Tham số này
chỉ có liên quan đến đệ trình một danh sách
gửi tin. Giá trị được phân cách nhau bằng
các ký tự 0 nếu cần thiết.
Số lượng tin đã gửi. Chỉ liên quan đến đệ
trình một danh sách gửi tin.Giá trị được
phân cách nhau bằng các ký tự 0 nếu cần
thiết.
Thời gian tin được đệ trình. Trong trường
hợp tin bị thay thế thì ngày tháng gửi tin
cũng phải thay thế theo. Định dạng là
YYMMDDhhmm với:
YY = year (00-99)
MM = month (01-12)
DD = day (01-31)
hh = hour (00-23)
mm = minute (00-59
Thời gian tin nắm được trạng thái cuối cùng
của nó. Định dạng như submit_date.
Trạng thái cuối cùng của tin. Xem bảng B2.
Chỉ ra mã lỗi của mạng hoặc của SMSC.
20 ký tự đầu tiên của tin

Bảng B-2: Trạng thái của tin trong báo cáo
Trạng thái của tin
DELIVERED
EXPIRED
DELETED
UNDELIVERABLE
ACCEPTED

Trạng thái cuối của tin
DELIVRD
EXPIRED
DELETED
UNDELIV
ACCEPTD

UNKNOWN
REJECTED

UNKNOWN
REJECTD

Mô tả
Tin đã được gửi tới đích
Tin đã bị quá hạn
Tin đã bị xóa
Không the gửi được tin
Tin được chấp nhận (ví dụ: đã
được khách hàng thuê bao dịch
vụ đọc)
Tin không hợp lệ
Tin không được chấp nhận

75

nên phải xử lý khi qua năm 2000. XỬ LÝ NĂM 2000 TRONG SMPP SMPP chỉ sử dụng hai số cho trường năm. Nhưng năm bắt đầu ‘00’ đến ‘37’ có nghĩa là 2000 đến 2037. Nhưng năm bắt đầu ‘38’ đến ‘99’ có nghĩa là 1938 đến 1999. 76 .PHỤ LỤC C.

PHỤ LỤC D. 0254 Giá trị Ghi chú 0000002E 00000004 00000000 00000002 00(NULL) 00(NULL) 00(NULL) 383430393034303631353136 840904061516 00 00 393937 997 00 00 00 00 00 00 00 F5 00 04 58535444 XSTD 77 . Cú pháp của dịch vụ như sau: . Gửi tin nhắn của dịch vụ XSTD. Nội dung chi tiết của tin nhắn xem kết quả mới nhất. Ví dụ: ‘XSTD 19 05 03’ là xem kết quả ngày 19 tháng 05 năm 2003. sử dụng PDU submit_sm.Lấy kết quả ngày nhất định trong quá khứ: XSTD Ngày Tháng Năm. VÍ DỤ VỀ TIN NGẮN CỦA DỊCH VỤ SMS a.Xem kết quả mới nhất: Soạn tin nhắn với nội dung ‘XSTD’ và gửi vào số 997. . Bảng D-1. Max 21 1 1 Var. Tên tường Submit_SM command_length command_id command_status sequence_number service_type source_addr_ton source_addr_npi source_addr dest_addr_ton dest_addr_npi dest_addr esm_class protocol_id priority_flag schedule_delivery_time validity_period registered_delivery replace_if_present_flag data_coding sm_default_msg_id sm_length short_message Kích thước Octets 4 4 4 4 Var. Max 6 1 1 Var. Max 21 1 1 1 1or17 1or17 1 1 1 1 1 Var.

TÀI LIỆU THAM KHẢO [GSM 03. PCS standardization committee. TIA/EIA/IS-637-A [TSAR] Teleservice Segmentation and Reassembly (TSAR).7. [WDP] Wireless Datagram Protocol Specification WAP Forum. TIA/EIA-136-750 [WAPARCH] Wireless Application Protocol Architecture Specification WAP Forum. http://www.fr.etsi. http://www. 1997 [GSM MAP 09.02] GSM Mobile Application Part. TIA/EIA-136-620 [CMT-136] Short Message Service – Cellular Messaging Teleservice. 78 . v5.1. v5.fr.etsi.1.38] “Digital Cellular telecommunications system (Phase 2+).etsi. http://www. Alphabets and language specific information”. http://www.wapforum.1995 [KOR ITS] PCS operators common standards for handset-SMS functionalities. v5.5. 1999 [ITUT X. TIA/EIA-136-710-A [GUTS] General UDP Transport Service.40] Technical Realisation of the Short Message Service Point to Point.1997 [GSM 03.wapforum.org. 1998 Message Protocol Specification WAP Forum.fr. 1998 [WCMP] Wireless Control http://www. 1999. http://www.11.wapforum.0 [IS637] Short Message Service for Spread Spectrum Systems.213] Open Systems Interconnection – Network Service Definition.org.org.