SMPP data_sm implementation for MT messages

Michael Zervakis michael at
Fri Nov 27 10:00:13 CET 2009

Data_sm can be used as an alternate of submit_sm when transmitting 
optional parameters (meta-data) and some carriers require the use of 
data_sm for MT charging applications.
Since Kannel is not implementing this feature it's a good idea to start 
a discussion on how this could be implemented.

First of all it's obvious that "static int send_messages()" at 
gw\smsc\smsc_smpp.c must be able to differentiate msgs that need to be 
sent as data_sm.
I can think of two ways to achieve this:
1) Alter MSG definition to inlcude a new parameter that defines type of 
message Data or normal SMS
Possible ways to use the new parameter could be the following
2) Leave MSG definition untouched and use meta-data to mark msg as data

Finally a new function has to be defined at gw\smsc\smsc_smpp.c to build 
data_sm pdu from msg for example "static SMPP_PDU *dmsg_to_pdu(SMPP 
*smpp, Msg *msg)"
and function "static int handle_pdu()" at gw\smsc\smsc_smpp.c has to be 
modified to include a case for data_sm_resp PDU.

Any comments?

More information about the devel mailing list