| module SMPP_Templates { |
| |
| import from General_Types all; |
| import from SMPP_Types all; |
| |
| template (value) SMPP_header ts_SMPP_hdr(OCT4 command_id, SMPP_error_code status, |
| integer seq := 0) := { |
| command_len := 0, |
| command_id := command_id, |
| command_status := status, |
| seq_num := seq |
| } |
| template SMPP_header tr_SMPP_hdr(template OCT4 command_id, template SMPP_error_code status, |
| template integer seq := ?) := { |
| command_len := ?, |
| command_id := command_id, |
| command_status := status, |
| seq_num := seq |
| } |
| |
| template (value) SMPP_PDU ts_SMPP(OCT4 command_id, SMPP_error_code status, |
| template (value) SMPP_operation_body body) := { |
| header := ts_SMPP_hdr(command_id, status), |
| body := body |
| } |
| template SMPP_PDU tr_SMPP(template OCT4 command_id, template SMPP_error_code status, |
| template integer seq := ?, |
| template SMPP_operation_body body := ?) := { |
| header := tr_SMPP_hdr(command_id, status, seq), |
| body := body |
| } |
| |
| |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_TX(template (value) SMPP_Bind bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_transmitter, ESME_ROK), |
| body := { |
| bind_transmitter := bind |
| } |
| } |
| template SMPP_PDU tr_SMPP_BIND_TX(template (value) SMPP_Bind bind, template integer seq := ?) := { |
| header := tr_SMPP_hdr(c_SMPP_command_id_bind_transmitter, ESME_ROK, seq), |
| body := { |
| bind_transmitter := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_TX_resp(SMPP_error_code status, |
| template (value) SMPP_Bind_resp bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_transmitter_resp, status), |
| body := { |
| bind_transmitter_resp := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_RX(template (value) SMPP_Bind bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_receiver, ESME_ROK), |
| body := { |
| bind_receiver := bind |
| } |
| } |
| template SMPP_PDU tr_SMPP_BIND_RX(template (value) SMPP_Bind bind, template integer seq := ?) := { |
| header := tr_SMPP_hdr(c_SMPP_command_id_bind_receiver, ESME_ROK, seq), |
| body := { |
| bind_receiver := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_RX_resp(SMPP_error_code status, |
| template (value) SMPP_Bind_resp bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_receiver_resp, status), |
| body := { |
| bind_receiver_resp := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_TRX(template (value) SMPP_Bind bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_transceiver, ESME_ROK), |
| body := { |
| bind_transceiver := bind |
| } |
| } |
| template SMPP_PDU tr_SMPP_BIND_TRX(template (value) SMPP_Bind bind, template integer seq := ?) := { |
| header := tr_SMPP_hdr(c_SMPP_command_id_bind_transceiver, ESME_ROK, seq), |
| body := { |
| bind_transceiver := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_BIND_TRX_resp(SMPP_error_code status, |
| template (value) SMPP_Bind_resp bind) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_bind_transceiver_resp, status), |
| body := { |
| bind_transceiver_resp := bind |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_ENQ_LINK := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_enquire_link, ESME_ROK), |
| body := { |
| enquire_link := {} |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_ENQ_LINK_resp := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_enquire_link_resp, ESME_ROK), |
| body := { |
| enquire_link_resp := {} |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_DELIVER_SM_resp(SMPP_error_code status, integer seq) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_deliver_sm_resp, status, seq), |
| body := { |
| deliver_sm_resp := { |
| message_id := "", /* unused */ |
| opt_pars := omit |
| } |
| } |
| } |
| |
| template (value) SMPP_PDU ts_SMPP_SUBMIT_SM(SMPP_SM sm) := { |
| header := ts_SMPP_hdr(c_SMPP_command_id_submit_sm, ESME_ROK), |
| body := { |
| submit_sm := sm |
| } |
| } |
| |
| /* Section 5.2.12 esm_class */ |
| template SMPP_BIT1 tr_ESM_CLASS_DEFAULT := '??????00'B; |
| template SMPP_BIT1 tr_ESM_CLASS_DATAGRAM := '??????01'B; |
| template SMPP_BIT1 tr_ESM_CLASS_TRANSACTION := '??????10'B; |
| template SMPP_BIT1 tr_ESM_CLASS_STORE_FORWARD := '??????11'B; |
| template SMPP_BIT1 tr_ESM_CLASS_UDHI := '?1??????'B; |
| template SMPP_BIT1 tr_ESM_CLASS_REPLYP_PATH := '1???????'B; |
| |
| |
| |
| |
| } |