VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

CallerID на русском

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Аватара пользователя
SolarW
Сообщения: 1331
Зарегистрирован: 01 сен 2010, 14:21
Откуда: Днепропетровск, Украина

Re: CallerID на русском

Сообщение SolarW »

kapa6ac писал(а):Было похожее только для FreePBX. Решил так:
Для FreePBX находил вот такие хинты:
http://asteriskforum.ru/viewtopic.php?t=8972
http://asteriskforum.ru/viewtopic.php?t=7623
kapa6ac
Сообщения: 12
Зарегистрирован: 23 май 2011, 11:53

Re: CallerID на русском

Сообщение kapa6ac »

намедни были в гостях товарищи из русского предсьавительства Digium рассказыввли,показывали Switchvox. Там русский пашет из коробки, хотя как выяснилось далее в беседе SV пользует одну из древних версия Asterisk.
filippov
Сообщения: 1
Зарегистрирован: 24 окт 2012, 12:15

Re: CallerID на русском

Сообщение filippov »

будет правильно если к абоненту прописывать имя как в латинице так и доп.имя в формате utf-8 в кириллице (иными словами 2 поля для имени)
да и чтоб на каждом абоненте появилась доп.галка типа "utf-8" (опция "utf-8"), тобишь при включении такой опции означало что телефон может принимать имена в формате utf-8.

да и не стоит забывать про sip-транки, вдруг если там проскочит "utf-8" на телефон где отключена опция "utf-8" надо будет имя "не латиницой" порубить.
ded
Сообщения: 15620
Зарегистрирован: 26 авг 2010, 19:00

Re: CallerID на русском

Сообщение ded »

Изображение
joe
Сообщения: 17
Зарегистрирован: 20 июн 2013, 19:46
Откуда: Kiev
Контактная информация:

Re: CallerID на русском

Сообщение joe »

Ребята, жизнь заставила зарегаться на форуме.
Вобщем, перечитал ветку, но так и не встретил решения проблемы.
Очень буду рад за помощь, готов отблагодарить.
Ситуация такова - в диалплане перед звонком пишу строку
exten => Set(CALLERID(name)=тест)
и во время звонка абоненту формируется хедер
From: "%d1%82%d0%b5%d1%81%d1%82"<sip:1111@х.х.х.х>;tag=as3e2b62ea
соответственно на экране сипфона вижу %d1%82%d0%b5%d1%81%d1%82 вместо тест
ни один из вариантов в этой теме не подошел и не помог.

Причем самое обидное есть разные сервера с одинаковой версией астера, но в одном - хедер формируется правильно, т.е. вот так:
From: "тест"<sip:1111@х.х.х.х>;tag=as3e2b62ea

а в другом неправильно, т.е. вот так
From: "%d1%82%d0%b5%d1%81%d1%82"<sip:1111@х.х.х.х>;tag=as3e2b62ea

Причина похоже в том, что астериск перекодирует кириллицу, но ведь она уже в UTF-8 стопроцентов, так как путти в консоле показывает правильно, а вот хедер потом формируется неправильно. Что заставляет его неправильно формироваться - никак не допру.
Есть у кого какие идеи?
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: CallerID на русском

Сообщение awsswa »

Смутно ... а не из mysql ли случайно читается CallerID ?
платный суппорт по мере возможностей
ded
Сообщения: 15620
Зарегистрирован: 26 авг 2010, 19:00

Re: CallerID на русском

Сообщение ded »

CallerID читается из mysql (случайно!).
Небось одна система - выбран русский язык при установке (как системный), а другая - английский?
Идея простая - функция ICONV
joe
Сообщения: 17
Зарегистрирован: 20 июн 2013, 19:46
Откуда: Kiev
Контактная информация:

Re: CallerID на русском

Сообщение joe »

Уважаемый ded, сначала читал из MYSQL, потом я ж говорю - указал напямую через SET и никакого Mysql. Я весь код свел до одной строчки. Языки везде алглийские, по команде locale - отдает UTF. Что не так - без понятия....
ded
Сообщения: 15620
Зарегистрирован: 26 авг 2010, 19:00

Re: CallerID на русском

Сообщение ded »

joe писал(а):Ситуация такова - в диалплане перед звонком пишу строку
exten => Set(CALLERID(name)=тест)
фиг знает каким редактором и как пишете там по-русски. Это можно увидеть командой в шелл - env | grep LANG
once more:
ded писал(а):Идея простая - функция ICONV
example: (convert CIDNAME from UTF-8 into ISO-8859-1)
exten => 1234,1,Iconv(CIDNAME/ISO-8859-1=${CIDNAME}/UTF-8)
ded
Сообщения: 15620
Зарегистрирован: 26 авг 2010, 19:00

Re: CallerID на русском

Сообщение ded »

Код: Выделить всё

*CLI> core show function ICONV 

  -= Info about function 'ICONV' =- 

[Synopsis]
Converts charsets of strings.    

[Description]
Converts string from <in-charset> into <out-charset>. For available charsets,
use 'iconv -l' on your shell command line.
NOTE: Due to limitations within the API, ICONV will not currently work with
charsets with embedded NULLs. If found, the string will terminate.

[Syntax]
ICONV(in-charset,out-charset,string)

[Arguments]
in-charset
    Input charset
out-charset
    Output charset
string
    String to convert, from <in-charset> to <out-charset>
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH