Critical - SMPP submission SMS messages not delivered internationally

Critical - SMPP submission SMS messages not delivered internationally SearchSearch
Author Message
Neil Stamps
Frequent Contributor
Username: Neil

Post Number: 58
Registered: 12-2009
Posted on Monday, August 09, 2010 - 09:29 am:   

I have been trying to communicate with devices in Mexico, and we have been having problems with submitting by SMPP. I have done some detailed tests - and each time the SMPP submission fails (I have tried setting a basic number, setting a full GSM spec international number, and not specifying a sending number at all).

Submission through the web console works fine - either with a sender number specified or without.

I enclose a set of tests and the outbound/inbound logs. If the message gets through we expect the device to respond within a few seconds.

It looks like there is something incorrect with the messages that are sent out when they are submitted by SMPP, as these are not received by mexico (I have tested to a phone, and only messages from web submission get received).

This is a critical problem for us - as we have a demonstration to potential customers in Mexico on Wednesday.

Please can you investigate and get back to us as soon as possible.

Thanks

Test Type Sent? Received?
------------ ------ ---------
web (no sender id) yes yes
url (no sender id) yes yes
url (sender specified) yes yes
url (sender with + prefix) yes yes
SMPP (sender specified) yes no
-----------------------------------------------
modem number changed in smsgw.ini to have + prefix
-------------------------------------------------
SMPP (sender + prefix) yes no
SMPP (no sender) yes no
Web yes yes
SMPP (to domestic 44) yes yes
SMPP (full spec address) yes no

------------------------------------------------
Here are the SMSOUT logs;

2010-08-09 08:24:55,4B1515C0.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,Sender=447545272818;Text="INF?"
2010-08-09 08:25:13,4B1515C1.req,,447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+525514396629;Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:24:46 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13508 Op:33403 Cell:03CD Sig_Lvl:15 Bat_Lv"
2010-08-09 08:26:02,4B1515C2.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,Sender=447545272818;Text="INF?"
2010-08-09 08:26:18,4B1515C3.req,,447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+525514396629;Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:25:52 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13575 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv"
2010-08-09 08:26:33,4B1515C4.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,Sender=447545272818;Text="INF?"
2010-08-09 08:28:06,4B1515C5.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,Sender=447545272818;Text="INF?"
2010-08-09 08:30:22,4B1515C6.req,,447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+525514396629;Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:26:23 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13606 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv"
2010-08-09 08:30:27,4B1515C7.req,,447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+525514396629;Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:27:56 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13699 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv"
2010-08-09 08:32:26,4B1515C8.req,192.168.16.33,+525514396629,OK -- Teltonika ModemCOM G10 #4,SubmitUser=demo2;Sender=447545272818;DCS=F1;Text="INF?"
2010-08-09 08:38:17,4B1519B0.req,192.168.16.33,+525514396629,OK -- Teltonika ModemCOM G10 #4,SubmitUser=demo2;Sender=+447545272818;DCS=F1;Text="INF?"
2010-08-09 08:47:08,4B1519B1.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,SubmitUser=demo2;Sender=+447545272818;DCS=F1;Text="INF?"
2010-08-09 08:51:05,4B1519B2.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,Sender=+447545272818;Text="INF?"
2010-08-09 08:51:23,4B1519B3.req,,+447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+525514396629;Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:50:56 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:15078 Op:33403 Cell:0321 Sig_Lvl:14 Bat_Lv"
2010-08-09 08:53:02,4B1519B4.req,192.168.16.21,+447989417659,OK -- Teltonika ModemCOM G10 #4,SubmitUser=demo2;Sender=+447545272818;DCS=F1;Text="FIX?"
2010-08-09 08:53:46,4B1519B5.req,,+447545272818,OK -- LocalUser:demo2,SubmitUser=Teltonika ModemCOM G10 #4;Sender=+447989417659;Text="INF? Got this"
2010-08-09 08:54:43,4B1519B6.req,192.168.16.21,+525514396629,OK -- Teltonika ModemCOM G10 #4,SubmitUser=demo2;Sender=+447545272818;DCS=F1;Text="INF?"

--------------------------------------------------
here are the SMSIN logs
2010-08-09 08:25:13,+525514396629,Teltonika ModemCOM G10 #4,Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:24:46 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13508 Op:33403 Cell:03CD Sig_Lvl:15 Bat_Lv";Recip=447545272818
2010-08-09 08:26:18,+525514396629,Teltonika ModemCOM G10 #4,Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:25:52 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13575 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv";Recip=447545272818
2010-08-09 08:30:22,+525514396629,Teltonika ModemCOM G10 #4,Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:26:23 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13606 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv";Recip=447545272818
2010-08-09 08:30:27,+525514396629,Teltonika ModemCOM G10 #4,Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:27:56 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:13699 Op:33403 Cell:03CD Sig_Lvl:14 Bat_Lv";Recip=447545272818
2010-08-09 08:51:23,+525514396629,Teltonika ModemCOM G10 #4,Text="INF! Id:GH1202 Imei:353976014692036 Time:2010.08.09 07:50:56 Version:HH_v2.4.1.230-<05.12.04-> CF:1 Live:15078 Op:33403 Cell:0321 Sig_Lvl:14 Bat_Lv";Recip=+447545272818
2010-08-09 08:53:46,+447989417659,Teltonika ModemCOM G10 #4,Text="INF? Got this";Recip=+447545272818
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2401
Registered: 08-2008
Posted on Monday, August 09, 2010 - 03:04 pm:   

Neil,

From the logs that you've posted, I don't really know what is working and what isn't.

But what I do notice is that some of the messages being sent have a DCS value of F1 (SMPP parameter name data_coding). I'm guessing that those are the messages being submitted via SMPP.

This is a setting for GSM message class 1 (mobile equipment specific message), and it is unusual that this would be specified.

SMS interconnects often have problems with strange DCS values (especially when connecting to North America where there are a mix of GSM and CDMA operators).

If you cannot (easily) change your SMPP application to stop using this data_coding value, there is a quick change you can apply in SMSGW.INI. Under the [SMPP] header of SMSGW.INI, add SMSCCharsetReceiveTextOverride=Yes. This setting will remap any SMPP data_coding from an SMPP client that is considered "text encoding" to a value of 0.

This does require a build version of 2009.11.25 or later. We don't release as many interim versions of NowSMS Lite because a lot of changes like this are not settings of interest to typical Lite users. However, I notice that there is a 2010.03.18 build of NowSMS Lite at http://www.nowsms.com/download/liteupdate.zip that you could use that includes this setting.

I mention the setting and update only as a possible quick solution to the problem. If the problem is what I suspect it is, the best solution is to stop using unusual data_coding (DCS) values.

--
Des
NowSMS Support
Neil Stamps
Frequent Contributor
Username: Neil

Post Number: 59
Registered: 12-2009
Posted on Monday, August 09, 2010 - 05:20 pm:   

thanks - that seems to have fixed the comms problem. I am now hitting a bit of a strange issue that I think we have seen before:

I submit a message:

message : "N011;CFG0;RQST4:FIX?,FIX! Id:%s Imei:%s Time:%s Fix:%s,%s
Cell:%s Sig_Lvl:%s Bat_Lvl:%s Loc_Area:%s,1 3 5 14 15 12 13 9 11,180,1;RST;"


but what is sent is:
#4,SubmitUser=demo2;Sender=+447545272818;DCS=F1;Text="N011;CFG0;RQST4:FIX?,FIX! Id:%s Imei:%s Time:%s Fix:%s,%s Cell:%s Sig§Lvl:%s Bat§Lvl:%s Loc§Area:%s,1 3 5 14 15 12 13 9 11,180,1;RST;"

note the _ gets translated to § - any idea what is causing this?
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2405
Registered: 08-2008
Posted on Tuesday, August 10, 2010 - 01:35 pm:   

(Sorry for the delay, this reply should have posted yesterday.)

This is a character set issue.

By default, NowSMS assumes that SMPP clients will be using the GSM character set.

In the GSM character set, 0x5F is §. In regular ASCII (iso-8859-1), 0x5F is _.

Different SMPP servers have different default character settings.

If you are using iso-8859-1 in your SMPP clients (which appears to be the case), you should set the data_coding value to 3, which explicitly tells the SMPP server that you are using iso-8859-1/ASCII.

However, you can also configure NowSMS to use iso-8859-1/ASCII as its default character set for SMPP clients.

The setting that I mentioned previously (SMSCCharsetReceiveTextOverride=Yes) tells NowSMS to mostly ignore this data_coding value. (NowSMS will still accept data_coding values if they indicate binary or Unicode.)

There is also a setting that tells NowSMS to use iso-8859-1 as the default character set for SMPP clients. To configure iso-8859-1 as the default character set for SMPP clients, configure the following under the [SMPP] header: SMSCCharset=iso-8859-1

It is OK to use the following settings together:

[SMPP]
SMSCCharsetReceiveTextOverride=Yes
SMSCCharset=iso-8859-1

Using these settings together means that NowSMS will ignore text data_coding values from SMPP applications and assume that the character set is iso-8859-1.

NowSMS will also use iso-8859-1 when delivering text messages to the SMPP client when SMSCCharset=iso-8859-1 is configured. However, NowSMS will explicitly set data_coding to 3 to tell the client that it is using the iso-8859-1 character set. This confuses some SMPP clients, so there is an additional setting in this [SMPP] section: SMSCCharsetDefault=Yes. When this setting is used together with SMSCCharset=iso-8859-1, iso-8859-1 encoding is used, but when delivering messages to the SMPP client, NowSMS uses a data_coding value of 0 instead of 3.

Character set issues can be confusing when dealing with SMPP clients, because of different default character sets with different SMPP servers.

--
Des
NowSMS Support