AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Соединение строк в dialplan

Asterisk IP PBX 7 сообщений -
#1

Соединение строк в dialplan


Нужно добавить назначение в строке URL ( /out после основного адреса)

Почитав

Соединение строк
Для соединения двух строк, просто напишите директиву, как показано ниже:


${foo}${bar}
555${theNumber}
${longDistancePrefix}555${theNumber}


Делаю так:

Код:


Global:
__URL="http://trunk.local.dev/ru/api/" ;// Url out calls

В макросе
same => n,Set(URL_OUT=${URL}out);



В итоге получаю:

Код:

- Executing [s@macro-dialout-trunk:7] Set("SIP/700-00000021", "URL_OUT="http://trunk.local.dev/ru/api/" out") in new stack
-- Executing [s@macro-dialout-trunk:8] Set("SIP/700-00000021", "unixtime=1400850886") in new stack

-- Executing [s@macro-dialout-trunk:12] NoOp("SIP/700-00000021", "curl "http://trunk.local.dev/ru/api/" out --data "ext=044XXXXXX&context="out_kiev"&dst=04458XXXXXX&uniqueid=1400851186.33"") in new stack




Оно то работает, но как-то криво....
Хотелось бы чтобы было

Код:

Set("SIP/700-00000021", "URL_OUT="http://trunk.local.dev/ru/api/out" )



Подскажите как?
Заранее благодарю.
#2

Global:
__URL=http://trunk.local.dev/ru/api ;// Url out calls

В макросе
same => n,Set(URL_OUT="${URL}/out");
#3

Все одно пробел тулит... во кривое то...
Код:


Executing [~~s~~@dialout-trunk:17] NoOp("SIP/703-0000000f", "curl "http://trunk.local.dev/ru/api/ out" --data "ext=&context=out_default&dst=&uniqueid=1401111236.15"") in new stack

#4

как-то не дает покоя пробел в примере
а если без пробела перед ";"?
__URL=http://trunk.local.dev/ru/api;// Url out calls
#5

Хм. А у меня нормально отрабатывает.

Код:
[2014-05-27 08:09:02] -- Executing [3000@lan-phones-tss:1] Set("SIP/1111dev-000019d3", "URL_OUT=http://trunk.local.dev/ru/api/out") in new stack
[2014-05-27 08:09:02] -- Executing [3000@lan-phones-tss:2] NoOp("SIP/1111dev-000019d3", "http://trunk.local.dev/ru/api/out") in new stack


Код:
exten => 3000,1,Set(URL_OUT=${URL}out)
exten => 3000,n,Noop(${URL_OUT})


Код:
telegk1*CLI> core show version
Asterisk 11.1.0
#6

adt2k @ Пн Май 26, 2014 16:37 писал(а):
как-то не дает покоя пробел в примере
а если без пробела перед ";"?
__URL=http://trunk.local.dev/ru/api;// Url out calls



Таки да, недоглядел.
Спасибо.
#7

xelas, у меня то же все работает... но походу это баг какой-то определенной верссии.