Hi All,

I have a situation when I'm connected to some SMSC that provides Ukraine (+380), but strictly prohibits to send to one specific ukranian network through itself - those restricted numbers can be matched by regexp ^\+?380[69]3\d+$

My smsc config is the following:

group = smsc
smsc = smpp
smsc-id = smsc-a
smsc-admin-id = smsc-a
host = 127.0.0.1
port = 8888
transceiver-mode = 1
smsc-username = user
smsc-password = pass
system-type = ""
#address-range = ""
#source-addr-autodetect = 1
source-addr-ton = 5
source-addr-npi = 0
dest-addr-ton = 1
dest-addr-npi = 1
allowed-prefix = "380;+380"
#allowed-prefix-regex = "^[:punct:]?380([69][^3]|[^69]3)[:digit:]+$"
denied-prefix = "38063;+38063;38093;+38093"
#denied-prefix-regex = "^[:punct:]?380[69]3[:digit:]+$"
enquire-link-interval = "30"
log-file = "/var/log/kannel/smsc-a.log"
log-level = 0


The receiver's number can come either with "+" or without "+" at the beginning, so I'm trying to adapt to both cases.

Now, when sending MT-message to the number +380638684444, it gets routed to this smsc, althow the denied-prefix has "+38063".

And when I'm uncommenting the regex prefixes and commenting out the allowed-prefix and denied-prefix params, the number doesn't match anything at all, so I'm getting NACK/no SMSC error.

I'm not new to regular expressions, so I guess I'm missing something at Kannel routing conception.

Any suggestions would be greatly appreciated.


--
Regards,
Semion Spivak
Smscoin.com Technical support.

Reply via email to