Delivery report from SMSC

Delivery report from SMSC SearchSearch
Author Message
Alexandre
Frequent Contributor
Username: Alexd

Post Number: 138
Registered: 01-2008
Posted on Tuesday, November 16, 2010 - 09:30 am:   

Hi!

I have noticed that if the delivery report from SMSC contains "submit date:0000000000" NowSMS starts to behave incorrectly (increases timeout at sending through HTTP).
Whether the incorrect delivery report from SMSC can, affect a database of reports NowSMS?
Alexandre
Frequent Contributor
Username: Alexd

Post Number: 139
Registered: 01-2008
Posted on Tuesday, November 16, 2010 - 04:56 pm:   

And some another strange thing, some time i see in SMSIN log, delivery report with DELIVERED status but with out submit date:

sub:001 dlvrd:001 submit date:0000000000 done date:1010132358 stat:DELIVRD
sub:001 dlvrd:001 submit date:0000000000 done date:1010132359 stat:DELIVRD
sub:001 dlvrd:001 submit date:0000000000 done date:1010132359 stat:DELIVRD

and some like this:

sub:001 dlvrd:000 submit date:0000000000 done date:1010132358 stat:REJECTD

What that mean ?
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2645
Registered: 08-2008
Posted on Tuesday, November 16, 2010 - 09:58 pm:   

Hi Alexandre,

If these are in the SMSIN log with "stat:DELIVRD", then the text that you see (except for the id:messageid prefix) is what was present in the delivery receipt when it was received from your SMS service provider.

NowSMS does not modify the "submit date:" in the text of the message.

It is possible for NowSMS to generate "stat:REJECTD" messages if the message was rejected by the upstream provider. However, I don't see how a "submit date:0000000000" would be possible in that case.

I suspect these are coming from your provider in this format. But you would have to enable the SMPPDEBUG.LOG or use a capture utility to see the exact data coming in from the provider.

--
Des
NowSMS Support
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2646
Registered: 08-2008
Posted on Tuesday, November 16, 2010 - 10:05 pm:   

Just after I hit submit, I remembered that there is a scenario that causes NowSMS to reformat the text of the delivery receipt.

If the delivery receipt arriving from the SMS provider is not standard format, NowSMS will regenerate the text with the submit date from its database.

I suppose it is possible that the database could be corrupt. This situation would slow down upstream SMPP submissions, but not HTTP submissions.

The message ID tracking database files are in the SMPPDATA directory. NowSMS 2010.04.15 and later scan these databases at startup and automatically repair them if corrupt (or rename them if not recoverable, to prevent operational problems). So if you suspect a corrupt database, restarting the NowSMS service would be a good idea.

I think the corruption idea is very unlikely (if it were corrupt, message IDs would not resolve, and delivery receipts would never be modified), and I still suspect that the receipts are being received from the provider in this format.

--
Des
NowSMS Support
Alexandre
Frequent Contributor
Username: Alexd

Post Number: 140
Registered: 01-2008
Posted on Wednesday, November 17, 2010 - 10:11 am:   

Hi! I receive delivery report from SMSC in this format:

Today i found in smsin log many delivery report without submit date and done date:

sub:000 dlvrd:000 submit date:0000000000 done date:0000000000 stat:REJECTD
sub:000 dlvrd:000 submit date:0000000000 done date:0000000000 stat:REJECTD
sub:000 dlvrd:000 submit date:0000000000 done date:0000000000 stat:REJECTD
sub:000 dlvrd:000 submit date:0000000000 done date:0000000000 stat:REJECTD

DB ic corrupt ?
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2652
Registered: 08-2008
Posted on Wednesday, November 17, 2010 - 07:10 pm:   

If the text of the receipt does not start with "id:", then NowSMS does generate the text values that appear in the receipt.

Is the "done date:" really also 0000000000?

This value does not come from a database, it comes from the current local time on the computer running NowSMS.

Are the receipt message IDs resolving correctly? If so, I still would not expect a corrupt database. (Plus, a new database is created every day, so it would be very unusual to experience corruption every day.) It is almost like the API call for getting the current date/time is failing.
Alexandre
Frequent Contributor
Username: Alexd

Post Number: 141
Registered: 01-2008
Posted on Wednesday, November 17, 2010 - 10:03 pm:   

Hi Des!

Yea, receipt message IDs resolving correctly, and SMSC id resolving correctly. I just cut this part (with id:-) from example :-)

"This value does not come from a database, it comes from the current local time on the computer running NowSMS."

.... hmmm...very, strange but I thought that "done date" generates SMSC, is not so ?.... If during message reception, SMSC not take it, then NowSMS generates Reject state? this is so?
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2653
Registered: 08-2008
Posted on Wednesday, November 17, 2010 - 10:20 pm:   

Hi Alexndre,

The SMSC would normally be the one generating this text.

NowSMS only generates this if:

1.) Message was rejected by the SMSC when NowSMS tries to submit it to the SMSC.

2.) The delivery receipt from the SMSC does not start with the text "id:".

In both cases, NowSMS asks Windows for the current date/time and applies this date/time as the "done date:".

"submit date:" is saved in a database when the message is first submitted to the SMSC. NowSMS asks Windows for the current date/time and saves it in the message id tracking database.

That is why I am concerned that if you are seeing "done date: 0000000000", then this is either coming from your provider (and you would see this text in the message capture), or the Windows API call where NowSMS asks the current date/time is not working ... which would be very odd. I'd reboot the server if you have not already.

--
Des
NowSMS Support
Alexandre
Frequent Contributor
Username: Alexd

Post Number: 142
Registered: 01-2008
Posted on Wednesday, November 17, 2010 - 10:41 pm:   

1. Yes i know
2. Yes i know what SMSC id not in "id:". (but SMSC id is present in SMSin log, i just cut this part)

Until then, I saw that when SMSC not accept the message, then nowsms generates "submit date" and "dona date", but now I began to notice that the SMSC id is present in SMSIN log, but instead of the date and time 0000 ...

And this situation is repeated, not only with one provider.
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2654
Registered: 08-2008
Posted on Wednesday, November 17, 2010 - 11:04 pm:   

I think we are having trouble communicating, so let me clarify what I think each of us is saying.

Right now, I am focused on the fact that you are seeing "done date:0000000000" in the delivery receipt text.

One of the following is true:

1.) "done date:0000000000" is in the data received from the SMSC.

2.) The text of the delivery report received from the SMSC did not start with "id:" so NowSMS must have generated the text.

You seem to be telling me that #2 is happening, and your capture shows me some other text appearing in the delivery report.

If #2 is the case, and NowSMS is generating the text, the fact that it is inserting "done date:0000000000" means that the operating system call to get the current date/time is failing.

Restart the server. This is a serious operating system level issue. I've never seen anything like this before.
Aisha Zeglam
New member
Username: Libyana1

Post Number: 2
Registered: 09-2009
Posted on Monday, November 29, 2010 - 09:39 am:   

Hii everybody
I am facing a strange thing, some time i see in SMSIN log, delivery report with UNDELIVERED or REJECTED status,although the message is successfully delivered to the destination.
Why is that happens, and how to avoid it???

many thanx
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2670
Registered: 08-2008
Posted on Monday, November 29, 2010 - 05:47 pm:   

Hi Aisha,

If the text says "UNDELIVERED" (or similar text like "UNDELIV"), then this delivery receipt is definitely being generated by your SMSC. I do not know why the SMSC would generate this error if it actually delivered the message. (That is outside of our control.)

If the text says "REJECTD", then it is possible that NowSMS is generating the error message because the SMSC is rejecting the message, or a timeout is occurring when submitting the message. To determine if this is the case, check the SMSOUT-yyyymmdd.LOG to see if there is an ERROR sending this same message. If there is, then what is the "err:" code in the text of the delivery report? If it is FFD, FFE or FFF, then this would indicate SMPP connection problems that need to be investigated further.

If there is no matching ERROR in the SMSOUT log, then NowSMS submitted the message to the SMSC, and the SMSC accepted responsibility for delivery.

If the SMSC is delivering the message, but also returning a non-delivery notification error, then this suggests something is wrong at the SMSC.

--
Des
NowSMS Support