Hi,

I think the problem was not stated properly, that is why their is some
confusion. In Greece Voda is "updating" its smscs.

The new smscs do not support GSM7. They are Latin1 based. In order for
them to allow transmision of the Greek Uppercase letters, as per GSM7,
the Greek Upper from GSM7 have been grafted on Latin1. All charcachters
that exist in both GSM7 and Latin1, retain their Latin1 possition. This
is their default encoding, ucs2 is supported if needed.

So when something is send to Kannel (I send utf-8 with all Latin-greek
equivalent changhed to latin, so a Greek Κ maps to Latin K but a greek
Δ  is send as a Δ) kannel sends it on as a GSM7 message.

This works fine now (and is the solution proposed by Mike), but on the
new system there is a problem, kannel will see a special char like $@
and a few others and map/send them in there GSM7 encoded form, while
they can only understand them in the Latin1 form, ending up as junk on
the phone.

They do the same to MO sms, but that is easier to handle by having some
mapping table in the application.

So the "solution" for their broken encoding is someway to tell kannel
not to touch the submitted message, submit Latin1 and pre-encode Greek
uppercase to GSM7. I use to do something similar back in the day, before
kannel started using iconv and doing the transcoding by itself, now we
need a way to bypass it.

Also according to Voda, if DCS is set to 2 then standard GSM7 can be
used, which means submitting to kannel in the encoding of your choice,
with all equivalent characters in their latin form, and letting kannel
do it's job as normal.


So other than the generic issue, for any that does not yet know how to,
of using GSM7 with kannel, for this specific issues their are two
possible solutions, cheating/skipping iconv or setting dcs=2.

Hope this helps in arriving to a working solution.

Regards,
Kyriacos Sakkas

On 06/09/2010 15:46, Nikos Balkanas wrote:
> Hi,
>
> Sorry for budding in. I don't know what you mean by exactly correct
> solution, but in Greece we have been using an approach like Mike's for
> all this time. A GSM 7 alphabet, can only pass 127 values. You have to
> give support to all Latin 1 caps + printable symbols, which leaves 55
> places for other GSM specific chars (lower case + non-printing). Of
> those 10 are used by the Greek special characters. Incidentally Delta
> corresponds either to linefeed or DLE (Data Link Escape), both not
> printing in the ascii table.
>
> So, whatever you do, assuming that all other 55 places are covered by
> special GSM symbols, only 10 of those are lost. But then again there
> is a limit to the places you can use in a 7bit alphabet.
>
> BR,
> Nikos
> ----- Original Message ----- From: Stelios Mavromichalis
> To: Cariotoglou Mike
> Cc: users@kannel.org
> Sent: Monday, September 06, 2010 3:14 PM
> Subject: Re: smpp latin1 and greek chars....
>
>
> hello Mike,
>
> thank you for your answer!
>
> i am suspecting that you leave the smpp connection to it's default
> charset (that is gsm7), right?
>
> this way, yes, greeks will do pass correctly however that does not
> stand for many other gsm7 character, right?
>
> yes, in most cases you won't need them but was looking for a
> completely "correct" solution.
>
> it seems, after reading Thanos' patch, that such solution is not
> possible unless you patch kannel like Thanos suggested (was trying to
> avoid this).
>
> kind regards,
>
> /mstelios
>
>
> Stelios Mavromichalis
> Cytech Ltd. - http://www.cytech.gr/
> Science & Technology Park of Crete
> fax: +30 2810 39 1941
> tel.: +30 2810 31 4127
> mob.: +30 697 7078013
> skype: mstelios
>
>
>
> 2010/9/3 Cariotoglou Mike <m...@singular.gr>
>
> talk about synchronicity!
>
> I just faced (and solved) the exact same issue.
>
> here is what to do :
>
> 1. make sure that your message is encoded in WINDOWS-1253
> 2. change all greek letters to upper case, no accent
> 3. search the message, and replace ALL characters EXCEPT the 10 Greek
> characters, to their English equivalents
>
> so, Greek alpha 0xC1 becomes 0x41, BUT greek DELTA stays as it is !
>
> 4. url-encode the text of the message
>
> 5. add the following parameter to your HTTP GET API call :
> charset=WINDOWS-1253
> (so that Kannel understands the 10 greek characters)
>
> done !
>
> this worked for me, (30 minutes ago) just fine, for vodafone SMSC. it
> may work for the other providers as well, who knows...
>
>
> PS this procedure may also work if the message is encoded otherwise,
> e.g unicode, but I have not tested it. the main idea to keep is that
> you REPLACE all greek charcters EXCEPT the 10...
>
>
>
>
>
> From: users-boun...@kannel.org [mailto:users-boun...@kannel.org] On
> Behalf Of Stelios Mavromichalis
> Sent: Friday, September 03, 2010 3:37 PM
> To: users@kannel.org
> Subject: smpp latin1 and greek chars....
>
>
> hello everyone,
>
> i have an smpp connection with alt-charset parameter set to latin1.
>
> the provider mapped the (missing from latin1) 10 capital greek letters
> included in the gsm charset into their exact same position in the
> latin1. meaning that for instance the greek capital letter Delta (Δ)
> is mapped on latin1 position 0x10 (which happens to be the exact same
> position in gsm charset).
>
> my problem is that i can't convince kannel 1.4.3 using it's http api
> to send any of those characters. it converts them to "?" no matter
> what i do.
>
> any ideas?
>
> kind regards,
>
> /mstelios
>
>
> Stelios Mavromichalis
> Cytech Ltd. - http://www.cytech.gr/
> Science & Technology Park of Crete
> fax: +30 2810 39 1941
> tel.: +30 2810 31 4127
> mob.: +30 697 7078013
> skype: mstelios 


-- 
Kyriacos Sakkas
Development Team
Netsmart
Tel: + 357 22 452565
Fax: + 357 22 452566
Email: kyria...@netsmart.com.cy
http://www.netsmart.com.cy

Taking Business to a New Level!

** Confidentiality Notice: The information contained in this email
message may be privileged, confidential and protected from disclosure.
If you are not the intended recipient, any dissemination, distribution,
or copying of this  email message is strictly prohibited.
If you think that you have received this email message in error, please
email the sender at kyria...@netsmart.com.cy **

Reply via email to