Question about BinaryDCS setting in SMSGW.ini

Question about BinaryDCS setting in SMSGW.ini SearchSearch
Author Message
guanghui sun
New member
Username: Streetin

Post Number: 1
Registered: 02-2009
Posted on Tuesday, February 24, 2009 - 12:08 pm:   

hi
NowSMS default value is F5 according to the user Guide, I want to send wap push base on class 0 SMS

Can i add BinaryDCS=F0, or 10 to send it?

I try it but failed, Can you give me the advance?

verion : NOWSMS V2008.06.03

thank you
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 517
Registered: 08-2008
Posted on Thursday, February 26, 2009 - 03:19 pm:   

Hi,

You can apply this setting. However, I would not expect the receiving terminal to be able to properly understand and decode the message.

If you set the DCS to F0, then this indicates that it a Class 0 message ... but it also indicates that it is a "text" message. So the receiving terminal is going to try to interpret the data of the message as "text", not binary data.

If you wanted it to be class 0, binary, then you would use F4.

That said, if you apply this setting, the class 0 attribute may prevent the message from being routed to the WAP push handler in the receiving phone. Behaviour is likely to be different on different phones.

I suspect you're trying to have a WAP Push message show up on the screen like a "flash SMS" message. However, I doubt that you will achieve this result.

(The primary reason for the BinaryDCS setting is that "Fx" DCS values are not properly understood or supported in some mobile operator environments. In those environments, a generic binary content value of "04" is used instead.)

--
Des
NowSMS Support
guanghui sun
New member
Username: Streetin

Post Number: 2
Registered: 02-2009
Posted on Friday, February 27, 2009 - 02:26 am:   

hi

first of all thank you for your explaination.

I got the error once i use F4:
ERROR - Error waiting for response from modem - Novatel Wireless Merlin GPRS Modem

I assume that GSM modem is don't understand the DCS F4.

so that means There is no way to have a WAP Push message show up on the screen like a "flash SMS" message. right?

any other suggestion about for this issue? I also try the SL WAP push , it also don't work properly. different phone different behaviour,
it looks no any phone can really understand SL WAP Push.

thank you very much.
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 522
Registered: 08-2008
Posted on Friday, February 27, 2009 - 01:44 pm:   

Hi,

It's difficult to know whether that error is a modem issue or a network issue.

I tried myself with a different modem (Sierra Wireless USB 881), and the message was sent fine ... and received the same as a WAP Push message with DCS=F5, as I expected.

What happens when the message is received is going to be phone specific.

I would expect most phones to route the message to the WAP push handler as normal. When the WAP push handler receives the message, it receives only the WAP push part of the content, not the SMS envelope ... so at this point, the SMS message class attribute is irrelevant.

Short answer ... I'm not aware of any way to make a WAP push message show up on the screen like a "flash SMS" message. And I'm very confident that the message class in the DCS is not a way to do this.

Regarding SL (service load) push ... in the real world it doesn't work like it is described in the specifications for one simple reason ... "security issues".

Some phones do support "service load" exactly as it was designed (automatically start the browser and load the URL), but this can cause problems.

You could send a service load pointing to a page that just keeps refreshing itself, racking up data charges for the recipient.

Because of this issue ... different phones have taken different approaches to dealing with service load. Many of them route the message through the inbox and require the user to manually open it. Some have a configuration option for whether or not to automatically open service load messages. I also believe that a few have a "trusted proxy" concept where the service load is opened automatically only if the push comes from a proxy that is in the trusted list on the device. (I don't think this latter scenario is very widespread, but I can't say I've studied this that extensively. In order for it to work, the receiving phone first needs to install a provisioning message to make your proxy a "trusted proxy".)

--
Des
NowSMS Support
guanghui sun
New member
Username: Streetin

Post Number: 3
Registered: 02-2009
Posted on Monday, March 02, 2009 - 03:10 am:   

It looks the network issue.

maybe the SP block my sim card to send WAP PUSH. :-(
Clint Perry
New member
Username: Cperry

Post Number: 4
Registered: 01-2009
Posted on Monday, March 02, 2009 - 03:47 pm:   

When Messages come to me they are set to BinaryDCS=2 and it seems that NowSMS is converting to a DCS of 4
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 532
Registered: 08-2008
Posted on Tuesday, March 03, 2009 - 05:47 pm:   


quote:

When Messages come to me they are set to BinaryDCS=2 and it seems that NowSMS is converting to a DCS of 4




Hi Clint,

Yes. That is purposely done.

A data_coding of "2" for a binary message is valid in SMPP.

HOWEVER, it is not a valid DCS value in an actual SMS message. According to ETSI GSM 03.38, a DCS value of "2" is "reserved". The spec also states that any reserved encodings should be assumed to be in the GSM default alphabet ... which would mean that the message would not be interpreted as binary.

According to the SMPP specification, data_coding values of "2" and "4" are both interpreted the same way as "octet unspecified (8-bit binary)".

For these reasons, if a message is received over SMPP with a data_coding value of "2", NowSMS automatically changes it to "4", so that the message can be compatible with other types of SMSC connections.

We've heard rumours of SMPP providers that require binary messages to be sent using a data_coding value of 2 instead of 4. And we've considered adding a configuration option to change 4 to 2 when routing out via a particular SMPP connection. However, so far this has been unnecessary. The last time this issue was raised with us, the customer found that even though their provider told them they should use 2 for binary messages, 4 actually worked just fine. (In the SMPP specification, they are defined to mean the same thing, so there should be no difference between 2 and 4 anyway.)

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

Post Number: 535
Registered: 08-2008
Posted on Tuesday, March 03, 2009 - 06:32 pm:   


quote:

maybe the SP block my sim card to send WAP PUSH




Can you send WAP Push with the default F5 setting? Or is that failing like your F4 tests?

If so, try BinaryDCS=4 ... that may work for standard WAP Push in your environment.

--
Des
NowSMS Support
Clint Perry
New member
Username: Cperry

Post Number: 6
Registered: 01-2009
Posted on Thursday, March 12, 2009 - 09:14 pm:   

Is there a way for you to create a build that will just pass what ever is received.

We route this message via SMPP to a "SMS User account"

They are expecting the BinaryDCS to equal 2 and when it doesnt they kill it as an error.
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 586
Registered: 08-2008
Posted on Friday, March 13, 2009 - 12:01 pm:   

Hi Clint,

I will investigate options and get back to you early next week.

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

Post Number: 602
Registered: 08-2008
Posted on Tuesday, March 17, 2009 - 07:34 pm:   

Follow-up. We haven't forgotten about this. A configuration setting should be available within 24 to 72 hours.
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 605
Registered: 08-2008
Posted on Wednesday, March 18, 2009 - 07:09 pm:   

An additional follow-up for Clint.

We've added a feature in NowSMS 2009.03.17 to address any SMPP SMSCs that require a binary data_coding value of 2 instead of 4.

As I mentioned previously, the SMPP specification defines both 2 and 4 as unspecified 8-bit binary. NowSMS always uses 4 (and converts received messages from 2 to 4), because 2 is a reserved value in GSM environments ... and because both values should be treated identically in SMPP environments.

Refer to the release notes in the update at http://www.nowsms.com/download/nowsms20090317.zip for more information.

But basically ... the current SMSGW.INI [SMSGW] BinaryDCS=## setting will retain its existing functionality. It is a bit confusing, but the purpose of this setting is to specify the DCS value to be used for WAP Push messages generated by NowSMS. (NowSMS defaults to F5, but some environments require that 4 be used instead. In your case, I would recommend using the value of 4 if you are generating any WAP Push messages with NowSMS.)

Two additional BinaryDCS=## settings have been added to deal with situations where an SMPP service provider or client requires a data_coding value of 2 instead of 4 for binary messages.

To specify data_coding = 2 instead of 4 for an SMPP SMSC connection, edit SMSGW.INI, and under the [SMPP - server:port] section of the file, add BinaryDCS=2.

If you need to use data_coding = 2 for an SMPP client connection (e.g., "SMS Users" account binds to NowSMS via SMPP), then you need to add BinaryDCS=2 to the [SMPP] section of SMSGW.INI. This [SMPP] section may or may not already exist, so it may be necessary to add this section header.


--
Des
NowSMS Support
Clint Perry
New member
Username: Cperry

Post Number: 7
Registered: 01-2009
Posted on Thursday, March 19, 2009 - 03:37 am:   

The Carrier send the SMS to me as DCS 2 and I need to route the message to a "SMS User" and keep it as a DCS 2

Here is my SMSGW.ini

Where should I add the config for this new feature?

[Inbound SMS Routing]
vzbitesttos=+118012222337
[SMSGW]
ReceiveSMS=Yes
ReceiveMMS=No
ReceiveSMSCharset=utf-8
ConfigurationUpdateTriggerRestart=20090223174638
WebAuth=Yes
WebMenu=Yes
WebPort=8800
SMPPPort=15000
IPAddress=192.168.203.71
Modem1=SMPP - 66.174.75.11:8302
AlertEMailRecip=cmdcenter@hughestelematics.com
AlertEMailSender=vzbsms@hughestelematics.com
AlertEMailSendInfo=No
AdminUser=admin
AdminPassword=LUHNOMBUNP
Debug=Yes
[SMPP - 66.174.75.11:8302]
SMPPVersion=v3.4
UserName=HUGHES2
Password=hu0308
SenderAddressOverride=Yes
Receive=Yes
ReceiveMMS=No
UseSSL=No
ReceiveSingleConnection=Yes
LongSMSAlt=No
RouteLocal=vzbitesttos
GSMPack=Yes
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 611
Registered: 08-2008
Posted on Thursday, March 19, 2009 - 06:10 pm:   

Add the following section:

[SMPP]
BinaryDCS=2

You may also want to add BinaryDCS=2 to the [SMPP - 66.174.75.11:8302] section. This will tell NowSMS to use 2 as the data_coding value for any binary messages routed out to that SMPP connection.

--
Des
NowSMS Support
Clint Perry
New member
Username: Cperry

Post Number: 8
Registered: 01-2009
Posted on Friday, March 20, 2009 - 09:54 pm:   

Thx the DCS value change works great. So the SMPP device Im talking to now does throw a DCS error.

I noticed that the message length gets increased when the message goes to the "SMS User" and the device that is the user seems to be choking on the Message Length

****Trace log form the "SMS User"****

Throwable: tlm.toc.commIF.common.CommIfException: ACPTL byte stream too small or large: len=154

(on the message that came in from Verizon the Message length was 135 but When NowSMS sent the message to the "user it was 154)

*********************************************

Why would NowSMS change the message length?

I also notice that the TON and the NPI were changed when the message was sent to the SMS User as well Is there a way to change the TON and NPI to the users? I tried to use the same parameters that are used for the SMSC connection but it didnt seem to adjust the settings

-CP

application/octet-streamMessage Length Capture
Message Length.doc (258.0 k)
application/octet-streamMessage Length Capture
Message Length.doc (258.0 k)
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 7755
Registered: 10-2002
Posted on Saturday, March 21, 2009 - 12:38 am:   

Hi Clint,

We overlooked something. The rest of our logic doesn't understand data_coding = 2 being binary. It's treating the message like a packed 7-bit text message.

I've posted an updated DLL at http://www.nowsms.com/download/clint.zip

This ZIP contains an updated SMSSMPP.DLL only. Stop the NowSMS services, exit NowSMS completely. Then copy SMSSMPP.DLL from this ZIP file over the existing copy in your Program Files\NowSMS directory.

That should handle the length correctly.

TON and NPI ... that's another story. We don't preserve them. But if you wanted to set them for client accounts, you should be able to apply SMSGW.INI settings under the [SMPP] header, which will apply to all client accounts. SourceTON=, SourceNPI=, DestTON=, DestNPI=

Apply the settings to an SMSC connection, then look at the entries created in the [SMPP - server:port] section. Copy those settings into the [SMPP] section of the SMSGW.INI file, and they will apply to all "SMS Users" client accounts.

-bn
Clint Perry
New member
Username: Cperry

Post Number: 9
Registered: 01-2009
Posted on Monday, March 23, 2009 - 02:55 am:   

ok I copied the file over and made the changes to the [SMPP]

I will update in the AM?

-CP