On Tuesday 25 January 2005 6:12 pm, Ghost wrote: > I tried replacing "@" with "!" but I get "!" in the > text message and not "@". Any suggestions please? > > Thanks in advance. >
You have to tell kannel what your SMSC's default character set is if it is not GSM 03.38 ( see http://www.csoft.co.uk/sms/character_sets/gsm.htm for a nice lookup table) . My SMS provider's SMSC expects and delivers messages in ASCII - I presume it must convert the GSM (or whatever) char set based messages from MO's internally before transferring. Kannel by default will assume incoming 7bit messages are GSM 03.38 encoded and recode to ascii unless you override it ( by using the alt-charset option). Conversely outgoing ascii messages will be recoded to GSM 03.38 by default . If your SMSC expects ASCII messages and that fact is NOT flagged in the data_coding field of the SMS PDU then kannel will translate it to/from GSM 03.38 before passing it on . currently the data_coding field enumerates the following charsets : 0 The SMSC's default alphabet - Not neccessarily GSM 03.38 ! 1 ASCII (ansi x3.4) 2 8 bit binary 3 ISO-8859-1 (Latin 1) 4 8 bit binary 5 JIS 6 ISO-8859-5 (Cyrllic) 7 ISO-8859-8 (Latin/Hebrew) 8 UCS2 9 Pictogram 10 ISO-2022-JP (Music) 11 reserved 12 reserved 13 Extended Kanji 14 KS C 5601 15 reserved If the data_encoding value is 0 (i.e the encoding has not been explicitly identified by the SMSC) then kannel will assume GSM 03.38 unless you override it . If your kannel is compiled with Iconv support then you can use the alt-charset to force the right translation . In my case alt-charset = "ASCII" does the trick (in this case - no translation at all as kannels internal encoding for 7bit data is ASCII) . The short answer : find out what encoding your SMSC uses (ask the vendor or gues it for yourself by looking at the debugging logs), make sure that kannel was built with iconv support and use the allt-charset config option to force the right conversion. HTH Peter Farmer
