Hi,

I already done it. Patch is in my tree should just rebase it against
kannel.org.

In my patch we have...

        In the config
group = smpp-tlv
name = some-name
tag = 0x1601
type = integer|nulterminated|octetstring
length = 4

Then in the msg struct I added meta_data field that can contain any
parameters not only for smpp. meta_data is formated as follows:
        meta_data = ?group?key=value&key1=value1?smpp?some-name=ABC
then SMPP module just set all TLVs that can be found in the smpp group of
meta_data.

With this approach it's possible to use this generic interface to put some
extra functionality into any SMSC module.

I will rebase my patch and post it (hope todo it this weekend), just be a
bit patient. 


Alejandro Guerrieri wrote:

> 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,

-- 
Thanks,
Alex


Reply via email to