Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2017-11-06 21:57:48 +0400

ipvinner Gravatar ipvinner

cidlookup и русский callerID

Всех приветствую! Хочу сделать вывод русских имен при входящем звонке. Использую freepbx callerID lookup sources, там есть метод http, сервер отдает строку и ответ 200 строка ответа сервера Фамилия Имя запрос к срм делает вот этот контекст

exten => cidlookup_5,1,Set(CURLOPT(httptimeout)=7)
exten => cidlookup_5,n,Set(CALLERID(name)=${CURL(http...)})
exten => cidlookup_5,n,NoOp(${CALLERID(name)})
exten => cidlookup_5,n,Return()

нормально присваивает callerID(name)

вот в консоли

Executing [cidlookup_5@cidlookup:2] Set("SIP/Intertelecom-00000011", "CALLERID(name)="Иван Ивано"") in new stack
    -- Executing [cidlookup_5@cidlookup:4] NoOp("SIP/Intertelecom-00000011", ""Иван Ив    -- Executing [cidlookup_5@cidlookup:5] Return("SIP/Intertelecom-00000011", "") in new stack

Но обрезает все после 5го символа, но это скорее всего проблема консоли, потомучто в конечном счете получается вывод на телефоне

\"Иван Иванов\"

Как он добавляет кавычки и экранирование? может нужно в каком-то другом формате отдавать от сервера фамилию и имя?

cidlookup и русский callerID

Всех приветствую! Хочу сделать вывод русских имен при входящем звонке. Использую freepbx callerID lookup sources, там есть метод http, сервер отдает строку и ответ 200 строка ответа сервера Фамилия Имя запрос к срм делает вот этот контекст

exten => cidlookup_5,1,Set(CURLOPT(httptimeout)=7)
exten => cidlookup_5,n,Set(CALLERID(name)=${CURL(http...)})
exten => cidlookup_5,n,NoOp(${CALLERID(name)})
exten => cidlookup_5,n,Return()

нормально присваивает callerID(name)

вот в консоли

Executing [cidlookup_5@cidlookup:2] Set("SIP/Intertelecom-00000011", "CALLERID(name)="Иван Ивано"") Иванов"") in new stack
    -- Executing [cidlookup_5@cidlookup:4] NoOp("SIP/Intertelecom-00000011", ""Иван Ив    -- Executing [cidlookup_5@cidlookup:5] Return("SIP/Intertelecom-00000011", "") in new stack

Но обрезает все после 5го символа, но это скорее всего проблема консоли, потомучто в конечном счете получается вывод на телефоне

\"Иван Иванов\"

Как он добавляет кавычки и экранирование? может нужно в каком-то другом формате отдавать от сервера фамилию и имя?

cidlookup и русский callerID

Всех приветствую! Хочу сделать вывод русских имен при входящем звонке. Использую freepbx callerID lookup sources, там есть метод http, сервер отдает строку и ответ 200 строка ответа сервера Фамилия Имя запрос к срм делает вот этот контекст

exten => cidlookup_5,1,Set(CURLOPT(httptimeout)=7)
exten => cidlookup_5,n,Set(CALLERID(name)=${CURL(http...)})
exten => cidlookup_5,n,NoOp(${CALLERID(name)})
exten => cidlookup_5,n,Return()

нормально присваивает callerID(name)

вот в консоли

Executing [cidlookup_5@cidlookup:2] Set("SIP/Intertelecom-00000011", "CALLERID(name)="Иван Иванов"") in new stack
    -- Executing [cidlookup_5@cidlookup:4] NoOp("SIP/Intertelecom-00000011", ""Иван Ив    -- Executing [cidlookup_5@cidlookup:5] Return("SIP/Intertelecom-00000011", "") in new stack

Но обрезает все после 5го символа, но это скорее всего проблема консоли, потомучто в конечном счете получается вывод на телефоне

\"Иван Иванов\"

Как он добавляет кавычки и экранирование? может нужно в каком-то другом формате отдавать от сервера фамилию и имя?

- Executing [s@macro-user-callerid:28] Set("SIP/Intertelecom-00000011", "CALLERID(name)="Иван Иванов"") in new stack
[2017-11-06 19:44:03] WARNING[29913][C-0000000a]: ast_expr2.fl:470 ast_yyerror: ast_yyerror():  syntax error: syntax error, unexpected '<token>', expecting $end; Input:
""Иван Иванов"" = ""
  ^
[2017-11-06 19:44:03] WARNING[29913][C-0000000a]: ast_expr2.fl:474 ast_yyerror: If you have questions, please refer to https://wiki.asterisk.org/wiki/display/AST/Channel+Variables

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.