[Asterisk-Dev] IAX spec: Text formats and character sets

Steve Underwood steveu at coppice.org
Thu Apr 28 16:16:25 MST 2005


Olle E. Johansson wrote:

> Steve Underwood wrote:
>
>> Olle E. Johansson wrote:
>>
>>> Steve Underwood wrote:
>>>
>>>> Hi,
>>>>
>>>> I raised this with Mark ages ago, when I started putting Chinese 
>>>> into IAX2 messages. I thought it should be specified that all text 
>>>> is Unicode in UTF-8 form, but he seemed pretty indifferent to 
>>>> specifying anything.
>>>>
>>>> There is no need to have ASCII + UTF-8. ASCII is a subset of UTF-8, 
>>>> so they are fully compatible. Its only when you have 8 bit sets, 
>>>> like the PC ones, that compatibility is an issue. Just define that 
>>>> all strings in IAX2 are UTF-8, and that is the end of it.
>>>>
>>> ...yes, I'll admit that is an easy way out. But we still need to handle
>>> conversion to ISO8859-1 caller ID's and find a way to do pattern 
>>> matching and how to use "." and "@" in IAX to call SIP uri's - there 
>>> are many things to consider. (The @ in an IAX2 dialstring separates 
>>> extension from context...)
>>
>>
>>
>> Caller IDs are normally ASCII, not ISO8859-1. The other characters 
>> are no problem. UTF-8 will pass them through without trouble. UTF-8 
>> is highly compatible with ASCII. URIs are kind of nasty, as they were 
>> not internationalised from day one.
>
> No - "Ö" in ISO-8859-1 is not "Ö" in UTF-8, it's a two byte character...
> So ASCII works, but nothing else. And we still have the function in 
> asterisk that strips characters from dial strings that are essential 
> in SIP and the use of the @ character as a separator.

The specs specs I know say the caller ID is IA-5, which is anther name 
for ASCII.

>
> I believed a lot of people in the IRC confirmed that CID names are 
> really ISO-8859-1, but that may apply outside US. We don't have them 
> here in Sweden, so I don't really now.
>
> So, even if we change all strings to UTF8, we still have to change 
> extension handling quite a lot to have a transparent solution.

If people don't follow the specs, you have trouble whatever you do :-)

Regards,
Steve




More information about the asterisk-dev mailing list