Expected Receiving Behavior

84 views
Skip to first unread message

gersep

unread,
Nov 25, 2009, 12:59:03 PM11/25/09
to jsmpp
Hello Everyone,

I have been learning SMPP for the last week or so, and I came across
jSMPP (great), however since yesterday I've been "fighting" a
situation when receiving messages from SMSC by the client ESME (myApp
of course). It would be nice if someone with more knowledge could help
me solve this issue or point me in the right direction.

The thing is I keep receiving the same previously received messages
over and over again, is there something I haven't understood? Do I
have to remove them manually from the SMCS by issuing a
cancelShortMessage(...) after I recieve a message, or should something
happen automatically and it's not happening?

* session.connectAndBind("localhost", 2775, new BindParameter
(BindType.BIND_TRX, "test", "test", "cp", TypeOfNumber.UNKNOWN,
NumberingPlanIndicator.ISDN, "1616"));

* session.setMessageReceiverListener(new MessageReceiverListenerImpl
());

Also, this previous instructions should make me "listen" only to
messages sent to address "1616" like specified in address range,
right?

If it helps for reference, I'm currently testing using SMPPSim by
Selenium. Thx in advance and congratulations on this great
implementation.

gersep

unread,
Nov 25, 2009, 1:08:03 PM11/25/09
to jsmpp
I discovered another issue, but this has probably got more to do with
the Selenium Simulator than with jSMPP... I bind as TX and send a
message to "1617" succesfully and it's being received by SMPPSim, but
when I connect as RX indicating "1617" con address range I do not
receive this message.

I'll keep looking and researching, however any help is greatly
aprecciated.

Vikash Anand

unread,
Nov 26, 2009, 12:36:02 AM11/26/09
to js...@googlegroups.com
Hi,

According to me there can be 2 reasons behind this:

1. The SMSC is sending messages again and again.
2. The transaction timer that you might have set using following may be inappropriate:
Long DEFAULT_TRANSACTIONTIMER = 2000L;
session.setTransactionTimer(DEFAULT_TRANSACTIONTIMER);

In 2nd case what happens is that when you receive a message from SMSC you might be doing some long processing that may cause your application not sending acknowledgement back to SMSC (this happens internally using some private methods that we do not have control) and SMSC resending the messages. Try increasing the transaction timer at your end and ask SMSC vendor wether they are getting acknowledgement back.

You need to ask SMSC why they are sending same messages again and again.

As per your mail I do not see you have done anything wrong from your side.

Thanks and Regards,
Vikash Anand.


--

You received this message because you are subscribed to the Google Groups "jsmpp" group.
To post to this group, send email to js...@googlegroups.com.
To unsubscribe from this group, send email to jsmpp+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/jsmpp?hl=en.





--
Thanks and Regards,
Vikash Anand.

gersep

unread,
Nov 26, 2009, 10:35:27 AM11/26/09
to jsmpp
Hello Vikash,

Thank you for your response, I will look into this and report my
results... Actually your reason number two makes a lot of sense so
I'll start looking there :) Thx.

On the other hand I'm still looking into a problem delivering a
message to another ESME using SMPPSim (by Selenium),,, I can send
messages to SMSC, receive messages directly injected in the SMSC,
however when trying to communicate with another ESME (obviously via
the SMSC) the message does not get delivered, so this brings the
question... sending and receiving should be as simple as the
following, right?

==== ON TRANSMITTER ====
- Bind as TX giving address range as "1" (numer one used for example
purposes)
- session.submitShortMessage giving "1" as source and "2" as
destination

==== ON RECEIVER ====
- Bind as RX giving addres range as "2" (Which should cause to receive
all messages sent to "2")
- Use a message receiver listener

Greetings.

gersep

unread,
Nov 27, 2009, 12:27:05 PM11/27/09
to jsmpp
The reason was actually a malfunction on the testing software... If
the ESME was connected as RX at the time the simulator sent a message
it was OK, but if it was offline and then came online, the simulator
had a bug and everytime the ESME connected back it would send again
those messages that were sent while not connected.

Also I found out that SMPPSim does not currently support "routing"
SMS, so if you send one to the SMSC sure it will be received and you
will be able to see it, but it will not be delivered to the ESME...
You need to inject the message directly into SMPPSim to see this
behavior happen.

Anyway I have a last doubt regarding Outbind, but I will open a
different topic on this issue for sake of clarity and future users
with the same question.

Thx for your support.

Regards.
Reply all
Reply to author
Forward
0 new messages