This will work. But I've just realised I do not want to create an SMSC for each now. Do you think that the following will work?:

SMPP Client  ----> Opensmppbox ---> bearerbox ---> HTTP SMSC

If I have one HTTP SMSC in the bearerbox config and use the following as my send-url

http://SERVERIP//Send?username=%n&Password=value here&Destination=%P&Source=%p&Body=%a

I have tested and used the esacapecodes from kannel user guide:

%p sender phone number
%P destination phone number
%n sendsms-user or sms-service name (this is the connected smppbox ID)

But I need to be able to also pull the password the client is using to connect to the smppbox, located in the smpplogins file, and add this to the GET URL.


-----Original Message-----
From: Rene Kluwen <[email protected]>
To: 'Lee Vidor' <[email protected]>; users <[email protected]>
Sent: Wed, 9 Mar 2011 0:39
Subject: RE: opensmppbox routing


The suggested solution:

Start a separate opensmppbox instance per smsc that you want to handle.
With a different config and "route-to-smsc" config item.

== Rene


-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf
Of Lee Vidor
Sent: Wednesday, 09 March, 2011 00:53
To: [email protected]
Subject: opensmppbox routing

Hi All,

I have the following setup:

Kannel as SMPP client ---> Opensmppbox ----> bearerbox ----> SMSC

The flow of a message works fine for a single SMSC. However I  need to
specify a separate SMSC for each connected opensmppbox. As specified in
the smpplogins file.

My current config is:

opensmppbox:

group = core

group = opensmppbox
opensmppbox-id = smppbox1
opensmppbox-port = 2345
bearerbox-host = 127.0.0.1
bearerbox-port = 13001
our-system-id = smppbox1
smpp-logins = /usr/local/kannel/testing/smpplogins.txt
use-systemid-as-smsboxid = true


kannel config:

group = core
admin-port = 13000
smsbox-port = 13001
admin-password = bar
#status-password = foo
admin-allow-ip = "127.0.0.1"
log-file = "/tmp/kannel.log"
log-level = 0
#box-deny-ip = "*.*.*.*"
box-allow-ip = "*.*.*.*"
#unified-prefix = "+358,00358,0;+,00"
access-log = "/tmp/access.log"
#store-file = "kannel.store"
#ssl-server-cert-file = "cert.pem"
#ssl-server-key-file = "key.pem"
#ssl-certkey-file = "mycertandprivkeyfile.pem"

group = smsbox
smsbox-id = BOX1
bearerbox-host = 127.0.0.1
sendsms-port = 13013
global-sender = 13013
#sendsms-chars = "0123456789 +-"
log-file = "/tmp/smsbox.log"
log-level = 0
access-log = "/tmp/access.log"

group = sendsms-user
username = tester
password = foobar

group = smsc
smsc = http
smsc-id = goodclient
system-type = kannel
smsc-username = goodclient
smsc-password = secret
allowed-smsc-id = goodclient
host = localhost
port = 13014
send-url = "http://localhost/test.php";
status-success-regex = "ok"
status-permfail-regex = "failure"
status-tempfail-regex = "retry later"
generic-foreign-id-regex = "<id>(.+)</id>"
generic-message-sent = "Message sent with ID: %I"
generic-status-sent = 200

group = smsc
smsc = http
smsc-id = "testclient"
system-type = kannel
smsc-username = testclient
smsc-password = secret
allowed-smsc-id = testclient
host = localhost
port = 13015
send-url = "http://localhost/test.php";
status-success-regex = "ok"
status-permfail-regex = "failure"
status-tempfail-regex = "retry later"
generic-foreign-id-regex = "<id>(.+)</id>"
generic-message-sent = "Message sent with ID: %I"
generic-status-sent = 200


If I specify two SMSCs in kanel.config then when messages are received
in opensmppbox from smppclient they are load balanced across the two. I
want to be able to specify which SMSC to use depending on id of
connected opensmppbox. I have tried sms-box routing but this doesn't
work. I require for the different SMSCs to be specified because the
send-url http get request will require unique credentials depending on
client connected.

I have also tried the 'allowed' or 'denied' smsc id parameters for each
smsc but these look at the destination address rather than opensmppbox
connection id.

I hope this makes sense and you can help.






Reply via email to