Update: After reports from a number of our customers we decided that the best option is to be able to set the character set and data coding scheme separately. In the next version of Diafaan SMS Server it is possible to set the character set to 'GSMDefaultAlphabet', 'ISO_8851_1', 'ISO_8851_15' and 'GSMDefaultAlphabet_7BitsPacked' and the DCS to any value between 0 and 255.
This should make sure that the data coding is compatible to (almost) all SMPP servers, although I would not be surprised if there are some SMPP servers that use yet another character set.
In response to the question from Kev, I have made a test with the iso-8859-1 encoding and found that the £ character is not correctly handled by Diafaan SMS Server if you set 'CharacterSetSend' to 'ISO_8859_1'. This will be fixed in the next version of Diafaan SMS Server. All users with a license that is still in the free upgrade and support period can request a plugin that fixes the problem in the current version of Diafaan SMS Server.
The SMPP specification is very vague about the Data Coding Scheme (DCS) that the SMPP service provider should support and as a result of this, different service providers handle the data coding scheme and optimum character set differently. This means that you might have to try out different settings to see what works for your SMPP connection. It also means that some characters will not be properly handled by some SMPP providers (or by Diafaan SMS Server, from the SMPP service provider's point of view).
Diafaan SMS Server uses the GSM default alphabet and character encoding (plus extension characters) in combination with DCS 0 by default. If your SMPP Service provider supports this as well, all characters from the SMS default alphabet should be received properly on the mobile phone, including the €, the @ and the £ characters. However, I have made tests with an SMPP service provider that, unnecessarily, converts the ¡ character to @ to 'help' customers send the @ character in an easier way.
Diafaan SMS Server also uses the SMS default alphabet and character encoding when you choose 'IA5' in the 'CharacterSetSend' property (DCS 1) but strictly speaking this is the wrong character encoding for DCS 1 since the official IA5 encoding only contains the basic ASCII characters.
When you choose 'ISO_8859_1' (DCS 3) as the 'CharacterSetSend' setting, and your SMPP server supports this, most of the characters should be sent properly but since the € character is not in the official iso-8859-1 character set, it is probably changed to a question mark. The same is true for a number of Greek characters that are in the SMS default alphabet.
Unfortunately, there are many other DCS/character set combinations that the SMPP service provider might consider the right choice. If you can provide us with information about the character set and DCS values that works best with your SMPP service provider we will try our best to implement this in future versions of Diafaan SMS Server. Please be as specific as possible, just sending an report that the @ does not display properly is usually not sufficient for us to figure out the optimal solution for your SMPP provider.
Thanks Pastor, but everything is encoded utf8 the web server and the database and if I set the data coding to anything other than iso-8559-1 then the GBP and Euro symbols turn out like this: ?? but the dollar sign and @@ works
If I change it to anything else even dollar sign and @ gets changed to: ?
I tried this over 4 different SMSC and getting same problem!
@ Kev did you find a solution?
I had problem this 3 month ago.
I fix it and all I do was send message like UTF8 set every to default and sms.text. Now works.
I have made a couple of tests to see if Diafaan SMS Server sends the proper DCS value and could not find anything wrong but I would like to have a look at your log files.
I too have been experiencing the same problems. I have been working with my SMS service provided for over a week, as they try to resolve DCS issues their end (missing £ signs, etc..). Their conclusion when they analyse their logs from various joint testing and after installing the lite version of Diafaan on their own server, is that the DCS being sent from Diafaan SMS server is always sent through as 0, even after changes to other character sets. They are kindly attempting to remedy this their end, but feel that this additional filter will reduce the throughput rate and are reluctant to implement it, meaning that I face having to resort to using their HTTP API instead, which I want to avoid ideally.
I am currently using version 22.214.171.124 and was hoping that the upgrade my resolve things, but it doesn't appear to.
Please can you investigate this issue, as it does point to a DCS setting issue with the software. I am happy to provide you with any additional information that you require.
Diafaan SMS Server sets the data coding scheme (DCS) in the SMPP Gateway to 0 (SMSC default character set) by default. When you set the 'CharacterSetSend' property in the advanced settings of the SMPP Gateway to 'IA5' the SMPP Gateway uses DCS value 1 and when you select 'ISO_8859_1' the SMPP Gateway uses DCS value 3.
If you have selected 'IA5' or 'ISO_8859_1' in the 'CharacterSetSend' property and the SMPP server still returns an error that says that you have sent the message with data coding 0 then I suspect that there is something wrong with error reporting of the SMPP server.
Thanks for that Henk.
A thing I noticed though is that whatever I change the character set to in Diafaan the SMSC reports that I have sent data coding 0? Is this an issue with the smsc or is it something that can be overridden in Diafaan?
AI5 (GSM SMS alphabet), iso-8859-1 and UCS2 (Unicode) are the only data coding schemes for SMPP that are supported by Diafaan SMS Server. It is not possible to use other character encodings or set other DCS values.
Is there any way to use a different Data Coding Scheme (DCS) to the options currently available in Diafaan? As far as I can see diafaan only provides the options: default, IA5 & iso-8859-1?
For example in Kannel you would just change the coding by setting DCS= to either 0 (SMSC default) through to 9 (ox00 - 0x08). With iso-8859-1 being 3 (0x03) but what if you needed to set it in Diafaan to one of the other SMPP DCS options?
Thanks in advance.
Most Users Ever Online: 494
Currently Browsing this Page:
Guest Posters: 384
Newest Members:, Henk Helmantel
Administrators: Henk Helmantel: 598