Routing to multiple SMPP links

Routing to multiple SMPP links SearchSearch
Author Message
Suvinay
New member
Username: Suvinay

Post Number: 18
Registered: 07-2004
Posted on Sunday, September 12, 2004 - 04:21 am:   

Hi Bryce,
Can I run two instances of NowSMS gateway? I require this as I want to use one for normal 2 way messages and the other for Bulk messaging (as that will keep the gateway busy and if I run on same, then performance will suffer)

Secondly I have the same short code 1111 assigned by two SMSC operators. I have two applications which connect to the NowSMS gateway over SMPP for processing the received messages.

Operator SMSC A has assigned 1111 short code and all incoming messages from SMSC A begin with +9829

Operator SMSC B has assigned 1111 short code and all incoming messages from SMSC B begin with +9828

Like I mentioned I have two SMPP client apps for processsing the messages, SMPP A and SMPPB

How do I route the messages to the appropriate SMPP link based on the incoming phone numbers? I understand that in the SMS users tag (which Iused to define the SMPP clients) I can only assign the receiving address, which, in this case is same 1111 for both the links.
I require:

SMSC A (+9829*) ---> SMPP A (short code 1111)
SMSC B (+9828*) ---> SMPP B (short code 1111)

How do I do this?
Thanks
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 3438
Registered: 10-2002
Posted on Tuesday, September 14, 2004 - 08:11 pm:   

Hi Suvinay,

See my other reply for the first part of your question: http://support.nowsms.com/discus/messages/1/6293.html

For the second part ... hmm ... that is a tough one. NowSMS is going to want to route the messages to the same account because the destination address in both cases is 1111.

The only way that I could think of overcoming this ... and it would be rather complicated ... would be to define the SMS Users accounts to route using phony short codes, lets say 2222 and 3333.

Then, you would need to define a "2-way" command to process "1111".

Your 2-way command would need to be an HTTP type, and I'd suggest it look something like this:

http://server:port/yourscript?PhoneNumber=@@RECIP@@&Sender=@@SENDER@@&Text=@@FUL LSMS@@&Binary=@@BINARY@@&DCS=@@DCS@@&UDH=@@UDH@@&PID=@@PID@@

yourscript (running on a separate web server) would receive these parameters. It would parse the "Sender=" parameter to determine which account to route the message to.

It would then issue an HTTP redirect response back to http://user:pass@127.0.0.1:xxx/?PhoneNumber=2222&Sender=...

Basically, it would need to pass all of the parameters received on the request back in the redirect URL, except for the "PhoneNumber" field which would get changed based upon who the sender is.

It's quite complicated, but that's the best idea I can come up with.

-bn
Suvinay
New member
Username: Suvinay

Post Number: 20
Registered: 07-2004
Posted on Monday, September 27, 2004 - 05:57 pm:   

Hi Bryce,
I understand the logic and I know this will work, but unfortunately this will create a SERIOUS problem for my applications as they are dependant on the recipient addres (Phone number).
My applications further route and process the messages based on recipient and I require the recipient address to be 1111 in all cases... just the origination service or service from can be different.
Any suggestions????? I am sure that some kind of routing to SMPP clients based on sender number can be done somehow!!!
Can we run two instances of NowSMS on the same pc?
ashot shahbazian
New member
Username: Animatele

Post Number: 28
Registered: 06-2004
Posted on Wednesday, September 29, 2004 - 05:33 pm:   

I'm afraid you won't be able to run 2 instances of NowSMS, as it's a LocalSystem service. The only way would probably be if you use some software that runs 2 instances of Windows on the same machine.
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 3499
Registered: 10-2002
Posted on Wednesday, September 29, 2004 - 10:14 pm:   

Hi Suvinay,

As Ashot mentions, 2 instances of NowSMS aren't going to work, at least not on the same PC.

I'm trying to figure out if there is some way to do this, but I can't think of anything.

I'm going to ask one of my colleagues if he can think of a simple way that we could add a setting that would allow this. The check that determines whether to route a message into a local user account does have access to both the sender and recipient address, but the routing table only has routing instructions based upon recipient.
Suvinay
New member
Username: Suvinay

Post Number: 27
Registered: 07-2004
Posted on Friday, October 08, 2004 - 09:44 am:   

Hi Bryce,
Any progress on the routing issue? Thanks
Suvinay
New member
Username: Suvinay

Post Number: 30
Registered: 07-2004
Posted on Thursday, October 21, 2004 - 09:12 am:   

Hi again Bryce,
I was thinking of an alternative to the problem. Suppose I set up only ONE SMPP client to which all incoming messages are routed to.
Here I have:
SMSC SMPP link A (short code 1111) with mobile numbers like +9829*
SMSC SMPP Link B (short code 2222) with mobile numbers like +9829*
SMSC SMPP link C (short code 1111) with mobile numbers like +9828*

(Note both link A and link B are with same operator with two different short codes, link C with different operator but same short code as link A)

I configure all 3 SMSC SMPP connections to route incoming messages to a client application connected to nowsms over SMPP, say APP1.

APP1 processes the incoming messages and submits the output back to NowSMS over the SMPP APP1 link.
Incase of: The application will submit...
LINK A: sender = 1111 recepient = +919829....Text = the output required
LINK B: sender = 2222 recepient = +919829....Text = the output required
LINK C: sender = 1111 recepient = +919828....Text = the output required

Now I guess NowSMS will have to do some routing options based on 1) Sender number and (2) Receipient number

How do I configure this? First NowSMS will check thee sender number and also check the recepient number since for both LINK A and LINK B the sender is different but recepient number formats same, whereas for LINK A and LINK C the sender is same and recepient different.

Naturally I want Link A messages to be sent via Link A, Link B with link b and link c with link c.
How do I configure NowSMS for this?????

Thanks
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 3634
Registered: 10-2002
Posted on Thursday, October 21, 2004 - 07:12 pm:   

Hi Suvinay,

If I understand you correctly, it would work like this.

You configure LINK A with sender address = 1111, and "preferred connection for" set to +919829*

You configure LINK B with sender address = 2222, and "preferred connection for" set to +919829*

You configure LINK C with sender address = 1111, and "preferred connection for" set to +919828*

If a message is being submitted with a sender address of 1111, it will then evaluate the recipient address masks of each connection that has 1111 specified as the sender address.