Dear List,

A fellow member of this list and me are planning to implement a
generic way to send/receive TLV's (SMPP Optional Parameters) to
Kannel. The objective of our approach will be to develop a high level
abstraction of the TLV structure in order to allow Kannel to send and
recognize specific TLV's just by writing special configuration
directives on it's conf files.

The idea has matured to the point of writing fictitious (as of now)
configuration directives and communication parameters.

As we see it, the configuration for optional parameters should go into
the core group. An "allow" directive could be put in place to limit
the functionality of specific parameters to specific smpp connections.

For example:

group = smpp-optional
group-id = msg_ticket
allowed-smsc-id = "smsc1;smsc2"
tlv-tag = 0x1404
tlv-length = 15
tlv-type = string

group = smpp-optional
group-id = msg_custom_param
allowed-smsc-id = "smsc1;smsc2"
tlv-tag = 0x14FF
tlv-length = 2
tlv-type = integer

This would define two TLV's, one called "msg_ticket" at address 0x1404
carrying a OctStr of 15 bytes in lenght. The second would be called
"msg_custom_param" at address 0x14FF carrying an integer of 2 bytes.
Both parameters only exists on the context of smpp connections named
"smsc1" and "smsc2".

To avoid clashing with other modules, the parameters would be
"serialized" into a single parameter to be sent/received by the
HTTP/XML and even SQLBOX interface (with minor modifications). The
syntax would be as follows:

To send:

http://myhost:port/cgi-bin/sendsms?....&smpp_optional=msg_ticket=xxxxxxxx&msg_custom_param=123

Note: the tag-value combination would have to be urlencoded of course.

To receive:

We could use any free letter (maybe "v" ?) to receive the tag-value
pairs, also urlencoded.

So if we configure post-url with "http://myhost/myapp?params=%v

We would receive a post with "params" (or any name we've chosen) loaded with:

"msg_ticket=xxxxxxx&msg_custom_param=321" (It would also be urlencoded).

Any opinions or suggestions from the core Kannel mantainers and fellow
community members are welcome.

Thank you in advance,
-- 
Alejandro Guerrieri
Magicom
http://www.magicom-bcn.net/
LinkedIn: http://www.linkedin.com/in/aguerrieri

Reply via email to